- (void)applicationDidEnterBackground:(UIApplication *)应用程序

时间:2010-10-25 19:21:10

标签: ios iphone xcode

我可以在AppDelegate以外的其他地方使用以下方法吗?若是,怎么做?

- (void)applicationDidEnterBackground:(UIApplication *)application

2 个答案:

答案 0 :(得分:13)

不,但您可以让其他对象注册UIApplicationDidEnterBackgroundNotification通知。然后将在调用applicationDidEnterBackground:的同时通知这些对象。

答案 1 :(得分:8)

这是UIApplicationDelegate协议的方法,只能由符合它的类实现。

您可以使用NSNotificationCenter对象从应用代理设置应用中其他对象的通知:

- (void)applicationDidEnterBackground:(UIApplication *)application {
   [[NSNotificationCenter defaultCenter] postNotificationName:@"didEnterBackground" object:self];
}

您还可以收听UIApplicationDidEnterBackgroundNotification通知,而不是执行上述操作。

注册要监听通知的对象,如下所示:

[[NSNotificationCenter defaultCenter] addObserver:someObject selector:@selector(someMethod:) name:@"UIApplicationDidEnterBackgroundNotification" object:nil];