2013-03-10 74 views
1

我已經搜索StackOverflow和谷歌,但沒有任何幫助我到目前爲止。爲什麼下面的代碼不適合我? Notting出現在控制檯中。該NSLog的在viewDidLoad中確實出現在控制檯...像applicationDidEnterBackground不工作的方法

在ViewController.m

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

該項目veru直線前進,一個故事板,一個視圖 - 控制,僅限iPad。

+0

可能的[UIViewController visible callback]重複(http://stackoverflow.com/questions/12266909/uiviewcontroller-visible-callback) – rmaddy 2013-03-10 19:30:28

回答

2

只有應用程序委託獲取調用該方法,而不是視圖控制器。該對象應符合UIApplicationDelegate並需要設置爲委託。您將它設置在MainMenu.xib中。該xib中的文件所有者對象是應用程序本身;創建應用程序委託類的另一個對象,並連接應用程序的delegate插座。

任何對象都可以通知應用程序事件,但是,通過向默認通知中心註冊 - 應用程序對象會將此消息發送給其委託併發布通知。在這種情況下,您想註冊UIApplicationDidEnterBackgroundNotification

+1

你應該提到,任何其他類都可以通過註冊'UIApplicationDidEnterBackgroundNotification'通知來得到通知。 – rmaddy 2013-03-10 19:31:10

+0

謝謝!喬希向我解釋清楚,rmaddy提供瞭解決方案 – Mathijs 2013-03-10 19:59:29