我想知道为什么:
UIApplication.shared.windows.first { $0.isKeyWindow }
在模拟器和设备上总是返回 nil。您可以通过在任何视图控制器的 viewDidLoad 中放置一个断点并将对象打印到控制台来确认这一点。
po UIApplication.shared.windows.first { $0.isKeyWindow }
我可以获得“keyWindow”的唯一方法是获得
UIApplication.shared.windows.first
但是没有明确提到它是关键。如果 iPad 拆分视图上有我的应用程序的多个实例怎么办?
有任何想法吗?
我的想法是,如果只有一个窗口,则默认情况下它是关键窗口,如果您在 iPad 上运行多个窗口,则当前正在与之交互的窗口将成为关键窗口,但是,我还没有对此进行测试。