2013-02-07 68 views
0

我有一個UITableView,我通過UIButton添加單元格。在創建時,單元從2個數組中獲取其textLabel & detailTextLabel。但是,如果表中已經存在具有相同標題的項目,我想更改現有單元格的detailTextLabel.text而不添加新的單元格。UITableView更改已創建的單元格上的detailText

那麼有沒有辦法更新某個UITableViewCell已經創建的某些值的detailText?

也許我應該刪除舊的並添加新的?

+1

您可以保留對希望修改的單元格的引用(然後在需要時修改它),就像任何其他控制,或者你可以recrea用更新的數據提取你的細胞。 – Jeremy

+0

很難說出你在做什麼 - 你通常不會在表中添加「單元格」,將數據添加到填充表的數組中,並且自動獲得更多行。我想你需要顯示你的代碼,所以我們可以看到你是如何填充你的表。 – rdelmar

+1

cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:kCellID]; –

回答

0

創建一個UITableView單元格應該就是創建數據而不是數據總量,因爲我們使用單元格,我們應該始終假定單元格數據已過時並需要刷新,因此您應該始終有一種方法來重置如果您有自定義單元格,則應該公開您正在使用的控件並在cellForRowAtIndexPath中相應地設置它們的值,如果您需要更改單元格,則應更改數據源值並通過- (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation重新加載單元格,或者用cellForRowAtIndexPath抓住單元格的位置,並根據需要更改值...我的觀點是不需要重新創建單元格。

相關問題