我有一個UITableView
。我想根據所做的選擇來更新表格數據。現在我使用[mytable reloadData]
;我想知道是否有任何方法可以更新所選的特定單元格。我可以通過使用NSIndexPath或其他修改嗎?有什麼建議麼?在iOS中重新加載特定的UITableView單元格
謝謝。
我有一個UITableView
。我想根據所做的選擇來更新表格數據。現在我使用[mytable reloadData]
;我想知道是否有任何方法可以更新所選的特定單元格。我可以通過使用NSIndexPath或其他修改嗎?有什麼建議麼?在iOS中重新加載特定的UITableView單元格
謝謝。
對於iOS 3.0及以上版本,你只需要調用:
- (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
要重新加載第2排3和例如,第3行第4行,您必須這樣做:
// Build the two index paths
NSIndexPath* indexPath1 = [NSIndexPath indexPathForRow:3 inSection:2];
NSIndexPath* indexPath2 = [NSIndexPath indexPathForRow:4 inSection:3];
// Add them in an index path array
NSArray* indexArray = [NSArray arrayWithObjects:indexPath1, indexPath2, nil];
// Launch reload for the two index path
[self.tableView reloadRowsAtIndexPaths:indexArray withRowAnimation:UITableViewRowAnimationFade];
我認爲你正在尋找的UITableView
這種方法:
- (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation
您也可以獲得對UITableViewCell對象並更改它的標籤等。
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
cell.textLabel.text = @"Hey, I've changed!";
我不熟悉索引路徑。你能否讓我詳細介紹一下。 – pa12
顧名思義,NSIndexPath包含一個索引。索引由2個組件行和部分組成。你可以創建一個[NSIndexPath indexPathForRow:(NSUInteger)inSection:(NSUInteger)]; – Abhinit
每個部分可以有多行。例如,在iPod MP3播放器中,每個字母都有一個部分。每個部分都包含幾位藝術家。 我編輯了我的原始代碼,告訴你如何去做。 – CedricSoubrie