【demo】万能动态跳转界面 - runtime
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
根据规则跳转到指定的界面(runtime实用篇一).xcodeproj
根据规则跳转到指定的界面(runtime实用篇一)
根据规则跳转到指定的界面(runtime实用篇一)Tests
.gitignore
README.md

README.md

根据规则跳转到指定的界面(runtime实用篇一)

####在开发项目中,会有这样变态的需求:

  • 推送:根据服务端推送过来的数据规则,跳转到对应的控制器
  • feeds列表:不同类似的cell,可能跳转不同的控制器(嘘!产品经理是这样要求:我也不确定会跳转哪个界面哦,可能是这个又可能是那个,能给我做灵活吗?根据后台返回规则任意跳转?)

思考:wocao!这变态的需求,要拒绝他吗? switch判断呗,考虑所有跳转的因素?这不得写死我...

switch () {
    case :
        break;
    default:
        break;
}

####我是这么个实现的(runtime是个好东西) 利用runtime动态生成对象、属性、方法这特性,我们可以先跟服务端商量好,定义跳转规则,比如要跳转到A控制器,需要传属性id、type,那么服务端返回字典给我,里面有控制器名,两个属性名跟属性值,客户端就可以根据控制器名生成对象,再用kvc给对象赋值,这样就搞定了 ---O(∩_∩)O哈哈哈