在iOS上,我们可以从UIScreen对象获取主UIWindow对象吗?
说,如果我们已经有aScreen
屏幕指向主屏幕,通过
UIScreen *aScreen = [UIScreen mainScreen];
我们可以从这个UIScreen
对象到主UIWindow
对象吗? (他们是否有任何连接?也就是说,而不是使用[UIApplication sharedApplication].keyWindow
)
没有。
应用程序有一个窗口列表,通常只有一个。 每个窗口都有一个screen
属性,指示当前所在的位置。 屏幕对象保存有关物理设备的信息。
它似乎启发OSX NSScreen
,没有一个窗口列表每个屏幕。 每个应用程序都有窗口,每个窗口都知道哪个屏幕位于。
一个UIWindow
知道它分配给哪个屏幕,但是一个UIScreen
不知道UIWindows
正在使用它。 这就是为什么标准模式是将主窗口保存为ApplicationDelegate的一个属性,所以你可以参考它。