gpt4 book ai didi

ios - 使用 Storyboard 时,操作系统何时设置 rootViewController?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:07:46 26 4
gpt4 key购买 nike

我惊讶地发现,在 didFinishLaunchingWithOptions 中,对 [UIApplication sharedApplication].keyWindow.rootViewController 的调用返回 nil

我想在应用程序启动时设置一些我需要引用 rvc 的东西,但是这种行为意味着我必须在其他地方做。如果不能在 didFinishLaunchingWithOptions 中完成,那么唯一的选择是 applicationDidBecomeActive?但是额外的刺激(一个小的刺激,但你仍然认为它不应该是必要的)必须有一个标志来确保设置步骤只发生一次而不是每次 appliationDidBecomeActive 被调用。

有没有其他地方我可以在应用程序启动时访问 rootViewController 来设置一次额外的步骤?

最佳答案

此时在应用程序生命周期中没有 keyWindow,所以没有 rootViewController 进入 keyWindow 的原因是因为 keyWindownil。但是 app delegate 有一个用于您的 window 的属性,因此您可以直接获取 self.window.rootViewController

但是,如果您始终拥有相同的 Root View Controller ,您可能至少可以在 Root View Controller 的 viewDidLoad 方法中执行您想要执行的某些操作(也许全部)。这通常应该只调用一次,因为在 iOS 6 和更高版本中,您的屏幕外 View Controller 的 View 永远不会被卸载。

关于ios - 使用 Storyboard 时,操作系统何时设置 rootViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21762394/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com