2008-12-08 88 views
3

我有一個導航視圖,其中包含一些與出生日期一樣簡單的單元格。當點擊該特定行時,將使用UIDatePicker將新控制器推入視圖。一旦選擇了新日期,我想我需要在viewWillDisappear中執行一些操作:對於特定單元格的UITextField值。我做這件事的最好方法是什麼?我是否需要在childController中傳遞對單元格indexPath的引用,將它設置在那裏,然後重新加載tableView的數據?子級控制器更新父級表格視圖中單元格的標籤

另一個棘手的技巧是讓我們說我的tableView數據源是一個包含鍵/值對的字典。當我在tableView上調用reloadData時,它會重新讀取該字典,而不會記下我的子控制器所做的日期更改。

回答

4

首先,重新載入數據的最佳位置在特定的UIViewController的viewWillAppear:方法中。這樣你就不必擔心引用其他控制器中的表。

二,如果我沒有誤解,我認爲你需要刷新對象。只要您在編輯(子)控制器中更改的內容是對錶(父級)控制器使用的同一對象的引用,數據就會同步。另一方面,如果您爲每個控制器重新加載數據(比如從一個文件),我會看看您的應用程序體系結構如何工作。對象是你的朋友。利用這一點。

相關問題