show
其实就是将弹窗放在最顶层,如何将view放在最顶层,我知道的有这几种方式:
-
直接在当前视图控制器上放
view
(简直6翻了) -
present到一个新的半透明视图控制器(想想
UIAlertViewController
,如果要使用这种弹窗的话,自定义的弹窗就是继承自UIViewController
而不是UIView
了) -
使用一个
windowLevel
更高的UIWindow
(UIAlertView
就是这种) -
放在
keyWindow
上 [使用这种方式有隐患]
封装自定义弹窗的思路是在[UIApplication sharedApplication].keyWindow
上add一个自定义view,后来被keyWindow坑过一次后,改为在[[[UIApplication sharedApplication] delegate] window]
上add自定义view。 -
放在
[UIApplication sharedApplication] delegate] window]
上(我起初是放在keyWindow上的,后面改成了这种)
网友评论