标题: 关于UIWindow的一些总结和问题 [打印本页] 作者: coyote 时间: 2014-9-28 21:58 标题: 关于UIWindow的一些总结和问题 首先我们来说说UIWindow,UIWindow继承自UIView,也就是说,它也是可见的视图,根据官方文档的解释:
The UIWindow class defines an object known as a window that manages and coordinates the views an app displays on a device screen. Unless an app can display content on an external device screen, an app has only one window.
UIWindow类定义了一个window对象来管理和协调一个应用在一台设备屏幕上展示的视图。除非一个应用可以在一个外部设备上面展示内容,否则一个应用只有一个窗口。
创建一个window对象之后,只有调用了makeKeyAndVisible这个方法以后,我们才能在模拟器上看到这个window,这个方法包含了两层意思。一层意思是makeKey,window有keyWindow和非keyWindow之分。我们可以通过方法[UIApplication shareApplication].keyWindow来找到一个应用的主窗口。那么什么是主窗口呢,上官方文档:
The app's key window. (read-only)
This property holds the UIWindow object in the windows array that is most recently sent the makeKeyAndVisible message.
应用的主窗口(只读)
这个属性持有了在windows数组中最新发送makeKeyAndVisible这个消息的window。
而对makeKeyAndVisible这个方法的解释是
Makes the receiver the key window and visible.
This is a convenience method to make the receiver the main window and displays it in front of other windows at the same window level or lower. You can also hide and reveal a window using the inherited hidden property of UIView.
使接收器成为主窗口并且可见
这是个便捷的方法可以使接收器成为主窗口并且在和它的windowLevel同级或者比它的windowLevel要低的窗口前面展示内容.你也可以使用window由UIView继承来的hidden属性来隐藏和显示它。