2010-03-27 55 views

回答

2

這基本上是不可能的。爲了達到你想要的效果,你必須以這樣的方式表達應用程序的狀態,以便它能夠定期和退出時快速保存到文件系統中,然後在重新啓動時從「磁盤」中恢復。

我從來沒有使用CoreData,但我懷疑它會自然支持這種需求。在SQLite中存儲狀態是另一種可能性。這些是非常不同的方法,有自己的利弊,選擇可能歸結爲個人偏好。我喜歡SQLite,因爲我可以以增量和事務方式持久保存狀態,而無需定期觸發保存世界的操作(CoreData也可能支持此操作;我懇求無知)。

3
  1. 註冊當您收到該應用程序會關閉,選擇保存信息的保存狀態通知接收任何 notifications
  2. NSUserDefaults或更適合您的應用程序的其他位置。
  3. 當您的應用程序重新啓動時,您可以使用之前存儲的值重建狀態。

有沒有自動化的方式來做到這一點,適用於每個應用程序,它是一個手動過程,但並不難。

編輯:這是蘋果的示例應用程序來做到這一點的基於導航的應用程序:DrillDownSave

相關問題