1

我搜索了 StackOverflow 和 Google,但到目前为止没有任何帮助。为什么以下代码对我不起作用?Notting 出现在控制台中。viewDidLoad 中的 NSLog 确实出现在控制台中...

在 ViewController.m 中

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

该项目非常简单,一个故事板,一个视图控制器,仅限 iPad。

4

1 回答 1

2

只有应用程序委托才能调用该方法,而不是视图控制器。该对象应符合UIApplicationDelegate并需要设置为委托。您在 MainMenu.xib 中设置它。该 xib 中的 File's Owner 对象是应用程序本身;创建应用程序委托类的另一个对象并连接应用程序的delegate出口。

但是,通过在默认通知中心注册,任何对象都可以获知应用程序事件——应用程序对象将发送此消息给它的委托并发布通知。在这种情况下,您要注册UIApplicationDidEnterBackgroundNotification.

于 2013-03-10T19:05:15.647 回答