我有一個UITableView,我通過UIButton添加單元格。在創建時,單元從2個數組中獲取其textLabel
& detailTextLabel
。但是,如果表中已經存在具有相同標題的項目,我想更改現有單元格的detailTextLabel.text
而不添加新的單元格。UITableView更改已創建的單元格上的detailText
那麼有沒有辦法更新某個UITableViewCell
已經創建的某些值的detailText?
也許我應該刪除舊的並添加新的?
我有一個UITableView,我通過UIButton添加單元格。在創建時,單元從2個數組中獲取其textLabel
& detailTextLabel
。但是,如果表中已經存在具有相同標題的項目,我想更改現有單元格的detailTextLabel.text
而不添加新的單元格。UITableView更改已創建的單元格上的detailText
那麼有沒有辦法更新某個UITableViewCell
已經創建的某些值的detailText?
也許我應該刪除舊的並添加新的?
創建一個UITableView單元格應該就是創建數據而不是數據總量,因爲我們使用單元格,我們應該始終假定單元格數據已過時並需要刷新,因此您應該始終有一種方法來重置如果您有自定義單元格,則應該公開您正在使用的控件並在cellForRowAtIndexPath中相應地設置它們的值,如果您需要更改單元格,則應更改數據源值並通過- (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation
重新加載單元格,或者用cellForRowAtIndexPath抓住單元格的位置,並根據需要更改值...我的觀點是不需要重新創建單元格。
您可以保留對希望修改的單元格的引用(然後在需要時修改它),就像任何其他控制,或者你可以recrea用更新的數據提取你的細胞。 – Jeremy
很難說出你在做什麼 - 你通常不會在表中添加「單元格」,將數據添加到填充表的數組中,並且自動獲得更多行。我想你需要顯示你的代碼,所以我們可以看到你是如何填充你的表。 – rdelmar
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:kCellID]; –