В проекте iOS Single View App, созданном с использованием Xcode, автоматически сгенерированный AppDelegate
имеет переменную экземпляра с именем window
:
// In AppDelegate.swift
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
// ...
var window: UIWindow?
// ...
}
Однако синглтон UIApplication
любого приложения iOS такжеимеет некоторые свойства, связанные с окном:
open class UIApplication : UIResponder {
// ...
open var keyWindow: UIWindow? { get }
open var windows: [UIWindow] { get }
// ...
}
Мое предположение:
windows
в UIApplication
- это просто массив длины 1, и единственным окном в нем являетсяокно AppDelegate
, а keyWindows
также является окном AppDelegate
.
Это правильно?Какая связь между window
из AppDelegate
и windows
из UIApplication
?