2012-01-08 73 views
0

我有在iPhone xcode的標籤欄應用程序,顯示任一字母或數字數據,根據在接片之一的用戶選擇的選項的表圖。它大部分工作,但是當我更改選項然後返回到表視圖時,表視圖最初看起來像在選項更改之前做的那樣。但是,隨着新單元格滾動到視圖中,它們具有新的顯示模式。如何重置表格視圖?

我可以找出選項的變化時,但我似乎無法得到正確的代碼,將重新初始化單元,使得在下次映入眼簾的時候,他們有正確的價值觀。數據來自一個帶有設置值的靜態數組,所以我不想對數據源做任何事情,只是表視圖。

換句話說,一旦顯示選項發生變化,我想要清除表格視圖,以便在下次顯示錶格視圖時,它將從頭開始顯示正確的數據,而不是在滾動發生後顯示正確的數據。

任何幫助,將不勝感激。謝謝。

回答

2

這聽起來像你想調用reloadData上的TableView。

[yourTableView reloadData];

+0

這是我的看法是如何聲明,但是當我嘗試做 [的tableView reloadData]; 我得到了tableview未聲明。 - (UITableViewCell的*)的tableView:(UITableView的*)的tableView \t \t的cellForRowAtIndexPath:(NSIndexPath *)indexPath { – Rick 2012-01-08 02:36:05

+0

正如我想想,我不知道reloadData將這項工作,雖然我不熟悉用它。我正在使用自定義單元格視圖來格式化3個數據項目,我正在加載表格單元格。我認爲,在我的「選項」選項卡已經加載並接收到來自用戶的輸入之後,我想釋放我的表並在下次加載時從頭開始。 – Rick 2012-01-08 04:41:27

+0

我認爲你試圖在錯誤的地方稱它。它應該在某處導致數據更改,而不是在構建TableView的方法中調用。如果你有一個標籤欄,並點擊一個按鈕改變排序順序,在該按鈕的動作中,你將排序數據,然後調用[self.tableView reloadData];使用iVar到你的TableView。 *如果您改變另一個控制器,影響在第二控制器集成在一個TableView中的數據的東西,你需要將更新的數據,並重新裝入一個委託方法背。或者是觀察員。許多方法來做到這一點。 – 2012-01-12 16:51:15

相關問題