2012-02-13 169 views
0

我有一個UIViewController顯示爲模式視圖控制器。在我看來,我有一個UITextView,4個ImageButtons(帶有CustomType)和另一個按鈕(也是自定義類型),可以拍攝一張照片,然後在該按鈕中顯示。iOS處理內存警告

的問題是下一:

  1. 假設我已經在UITextView設置一些文本和4個ImageButtons在他們每個人的圖像。
  2. 然後我啓動UIImagePickerController,我收到內存警告(通常會發生什麼情況),因此didReceiveMemoryWarning被調用並且viewDidUnload。
  3. 當我從UIImagePickerController返回時,所有信息都會被清除,因此用戶必須重新鍵入所有內容(併爲按鈕設置4張照片)。

所以問題是,我應該如何處理這種情況,以避免用戶重新輸入一切?我是否應該將狀態保存在UserDefaults中或將舊信息保存在UIViewController的屬性中,因此在viewDidLoad再次被調用時使用它們?

謝謝!

回答

1

沒有理由涉及NSUserDefaults。只需在視圖控制器的屬性中保存各種控件的狀態即可。然後,您可以在重新加載視圖時恢復-viewDidLoad方法中的控件。