2010-10-25 47 views

回答

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]; 
+0

你可以舉一個例子說明在哪裏放置這段代碼,以及如何調用它?換句話說,這是爲了保存整個視圖還是視圖中的對象? – Jason 2012-05-29 02:06:12

+0

請勿使用第一個選項。在第二個選項中使用適當的常量,而不是硬編碼通知名稱。 – rmaddy 2014-07-10 17:20:34

13

沒有,但你可以有其他對象註冊了UIApplicationDidEnterBackgroundNotification通知。這些對象隨後會在調用applicationDidEnterBackground:的同時被通知。

+0

這個答案似乎更可取,因爲您沒有發佈冗餘通知。 – BadPirate 2012-12-19 01:43:08

相關問題