- (void) applicationDidEnterBackground: (UIApplication *) приложение - PullRequest
3 голосов
/ 25 октября 2010

Могу ли я использовать метод ниже где-нибудь, кроме AppDelegate? Если да, то как?

- (void)applicationDidEnterBackground:(UIApplication *)application

Ответы [ 2 ]

13 голосов
/ 25 октября 2010

Нет, но вы можете зарегистрировать другие объекты для уведомления UIApplicationDidEnterBackgroundNotification.Эти объекты будут уведомлены одновременно с вызовом applicationDidEnterBackground:.

8 голосов
/ 25 октября 2010

Это метод протокола UIApplicationDelegate, который может быть реализован только классами, которые ему соответствуют.

Вы можете настроить уведомление для других объектов в вашем приложении от своего делегата приложения, используя объект NSNotificationCenter:

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

Существует также уведомление UIApplicationDidEnterBackgroundNotification, которое вы можете прослушивать вместо выполнения вышеуказанного.

Зарегистрируйте объекты, которые вы хотите прослушать для уведомления, как это:

[[NSNotificationCenter defaultCenter] addObserver:someObject selector:@selector(someMethod:) name:@"UIApplicationDidEnterBackgroundNotification" object:nil];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...