2012-01-31 41 views
0

我試圖將數據保存到Plist,並且我認爲最好的地方應該是在委託.m「applicationWillTerminate」中,因爲Apple在那裏謹慎地發表評論「如果合適的話保存數據」。iOS/iPhone應用程序是保存數據的最佳位置嗎?

但是,當我使用iPhone Simulator進行測試時,這個方法似乎永遠不會被調用。我的NSLog語句永遠不會運行。

所以,這是退出應用程序時保存數據的最佳位置,如果是這樣,你知道它爲什麼永遠不會被調用嗎?

回答

4

由於iOS 4應用程序可以輸入「背景」而不是終止,因此可能不會調用applicationWillTerminate:。您也可以使用applicationDidEnterBackground:。您可以創建一個方法來保存數據並在兩個委託方法中調用它。

+0

謝謝 - 我只是跑了一個測試,它似乎總是去「applicationDidEnterBackground」。那麼什麼時候應用程序實際退出? – wayneh 2012-01-31 23:08:35

+0

當用戶在底部欄中關閉它時(通過雙擊主頁按鈕或使用正確配置的iPad上的4個手指向上滑動顯示)。您可以按住圖標直到出現紅色的「 - 」。 – sidyll 2012-01-31 23:10:16

+0

雖然這是特定的幾代 - 我的iPod 2G不這樣做。我剛剛在設備上運行我的應用程序,之後立即調用「applicationDidEnterBackground」和「applicationWillTerminate」。所以,只要數據發生變化,去BG可能是最好的,或者像凱勒說的那樣。謝謝。 – wayneh 2012-01-31 23:13:24

1

或者你可以保存你的Plist,當它改變,這樣你總是知道數據是最新的。

相關問題