gpt4 book ai didi

ios - 为什么当应用程序从后台激活时不调用 Controller 的类方法?

转载 作者:行者123 更新时间:2023-11-29 02:46:51 24 4
gpt4 key购买 nike

当我与我的应用分享某些内容时,它会被调用-(BOOL) application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{获取与之共享的内容。之后,我需要在应用程序的第一个 Controller 中以模态方式呈现内容,但是如果从 appDelegate 调用函数 [self.library showContent:item]; library是app的主 Controller ,它不会调用主 Controller 的viewDidLoadviewDidAppear等类方法,只会调用applicationDidBecomeActiveappDelegate,我不能从 showContent 方法运行 presentModalViewController,因为它的 View 还没有出现在屏幕上。

简短版本:为什么当应用程序来自 applicationDidBecomeActive 时,它不调用第一个 Controller 的类方法,如 viewDidAppear ?如果我不知道主 Controller 何时显示在屏幕上,我如何在主 Controller 中调用 presentModalViewController

最佳答案

我认为你混淆了 UIViewController 生命周期和应用程序生命周期,这两者是不同的。

简要提示:将您的代码从 ViewDidAppear 取出到外部方法,并尝试从 applicationDidBecomeActive 的某处调用此方法。

有关应用程序生命周期,请参阅 this链接。

UIViewController 生命周期见 this链接。

希望对您有所帮助。

关于ios - 为什么当应用程序从后台激活时不调用 Controller 的类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25009728/

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