我想知道在所有 iOS 应用程序中我们必须为我们的 UIWindow 对象编写 makeKeyAndVisible 。那么是否有一个我们不希望我们的应用程序 makeKeyAndVisible 的示例。
如果我们总是在任何应用程序中都需要它,那么为什么苹果会自动为我们编写它,就像他们为 @synthesize 作为 iOS 6 的一部分所做的那样?
Apple 使用情节提要自动处理 makeKeyAndVisible
使用故事板,iOS 执行以下步骤:
一个应用程序可以有多个窗口。调用makeKeyAndVisible
用于指定哪个是当前的。
尽管大多数应用程序只有一个窗口,但无法假设您的主窗口是关键窗口。因此,您必须显式调用makeKeyAndVisible
.
如果您使用故事板来启动您的应用程序,则不需要调用makeKeyAndVisible。
您可以尝试在 Xcode 6 中创建一个新项目。该项目没有使用makeKeyAndVisible,如果您尝试获取 keyWindow,您将获得 nil。