AlertView和Window

2017-10-17  本文已影响0人  玉米须须

在项目中的使用场景是这样的:

点击按钮弹出AlertView,在AlertView的回调方法中,新建一个view,然后将其加到当前的window上,操作如下:

发现问题,view弹出后很快就消失了。问题是该view是加到window上的,怎么会没移除就消失呢?

后来打印了下window的内存地址,对比了下:

1)window1:定义变量window,是在viewDidLoad中提前获取self.window的值

self.window= [[UIApplicationsharedApplication] keyWindow];

2)window2:在alerview的方法中获取window:[[UIApplicationsharedApplication] keyWindow]

经过日志打印,发现二者的内存地址是不同的,

后来发现,显示alertView的时候,会创建新的window,将alertView显示在window上,所以会出现内存地址不同的window

上一篇 下一篇

猜你喜欢

热点阅读