在开发项目中,会有这样变态的需求:
• 推送:根据服务端推送过来的数据规则,跳转到对应的控制器
• 列表:不同类似的名字,可能跳转不同的控制器(嘘!产品经理是这样要求:我也不确定会跳转哪个界面哦,可能是这个又可能是那个,能给我做灵活吗?根据后台返回规则任意跳转?)
switch判断呗,考虑所有跳转的因素?
switch () {
case :
break;
default:
break;
}
或者if else…
虽然可以解决 但是太过于麻烦 有10种跳转的可能 就要定义10种类型
老的方式 如下:
新方法:
通过苹果底层api runTime 来解决
第一步 定义json字典 class为class名称 peopetykey值
跳转界面
第一种情况 万能跳转 成功解决~
但是 对于某些界面 需要特定的参数 怎么办?
第二步 优化
判断当前class 是否具有指定的属性
至此 优化完毕~