2011-07-08 127 views
2

當主頁按鈕被點擊而不是外部事件(短信,通話,視頻通話)時,如何識別應用是否在後臺?iPhone識別主頁按鈕被按下

+2

Oy;無論我多麼頻繁地問,我似乎從來都不知道我不應該這樣做:爲什麼你需要知道這一點? –

+1

@Williham Totland超出了這個問題的範圍。 – 2011-07-08 13:33:01

+0

@WTP:不一定:爲什麼通知如何。 –

回答

4

如果應用程序發送到後臺,

applicationDidEnterBackground 

將會得到調用。

如果是通過短信,通話,視頻通話,那麼,

applicationWillResignActive 

將會得到第一個調用。你可以認同這一點。

+0

在我的應用程序有一個按鈕,打開瀏覽器和我的應用程序是爲背景。我只想在點擊主頁按鈕時關閉應用程序。 感謝您的幫助。 –

+0

要關閉應用程序,只需調用exit(0)...在此之前,如果你想存儲任何設置,保存它... – Ilanchezhian

0

AFAIK沒有辦法。看看UIApplicationDelegate文件,你會看到:

- (void)applicationWillResignActive:(UIApplication *)application

這個方法被調用,讓你的應用程序知道它即將從活動轉移到非活動狀態。對於某些類型的臨時中斷(例如來電或SMS消息)或用戶退出應用程序並開始轉換到後臺狀態時,可能會發生這種情況。

顯然沒有辦法區分中斷(SMS,呼叫)或退出(通過按主屏幕按鈕)。