gpt4 book ai didi

ios9 - 我的工作中未调用 iOS 9 UIApplicationDidBecomeActiveNotification 回调

转载 作者:行者123 更新时间:2023-12-02 04:46:45 25 4
gpt4 key购买 nike

在 iOS 9 中,以下用于检测通知的代码不会触发选择器方法。在以前的版本(例如 8.4)中,它运行良好。有谁知道为什么吗?

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationDidBecomeActive)name:UIApplicationDidBecomeActiveNotification object:nil];

...

- (void)applicationDidBecomeActive
{
NSLog(@"1");
}

AppDelegate.m

- (void)applicationDidBecomeActive:(UIApplication *)application {
NSLog(@"2");
}

最佳答案

我在 AppDelegate 中注册了 UIApplicationDidBecomeActiveNotification:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{
...
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(handleDidBecomeActive)
name: UIApplicationDidBecomeActiveNotification
object: nil];
...
}

选择器 handleDidBecomeActive 将在启动应用程序的开始时直接调用。

-(void)handleDidBecomeActive
{
NSLog(@"AppDelegate: didBecomeActive");
}

这适用于 iOS9。

我试图在稍后创建的类中获取 UIApplicationDidBecomeActiveNotification(连接到 rootViewController)。在这种情况下,不会调用专用选择器。这在 iOS8 中有效。

关于ios9 - 我的工作中未调用 iOS 9 UIApplicationDidBecomeActiveNotification 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32246409/

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