push和present的交互 如果说 想让什么时候都能push和present 并且不能遮挡 必须在最上面
最上面有两种方式:一种是present 另一种通过window来
一:A - present B 这时候来了有个系统的弹窗提醒需要 push 到 C
二: A present B后 就不能用A 再present C了
有些使用不统一的 都是用 appdelegate.rootVC present 或者keywindow present 比较混乱
三:有时候我们又希望 当前VC 正在做的事情,如果又消息弹窗来 不能遮挡,其他情况需要随时 弹窗提醒
以上三种情况 基本包含了 各式各样 push&present的情景
对于 一: 新的消息的提醒 为了不遮挡当前已有 采用新的window来展示(这样可以在返回后 present的VC 还在 不用dismiss)
对于二:runtime修改present VC 全部改为keywindow.rootVC present VC
对于三:使用 new Window来展示,设置window.windowLevel = UIWindowLevelAlert+1;
需要注意的是 在采用新的window展示的时候,需要设置window.windowLevel = normal + 1;
将新消息弹窗的window.windowLevel = UIWindowLevelAlert
网友评论