是否有可能通過標籤更新iOS UITableView中的cell imageView?我讚賞其他方法可用,但我想盡可能使用標籤。通過標籤更新UITableView Cell imageView
我通過設置圖像:
cell.imageView.image = [UIImage imageNamed:@"dinner.png"];
而在另一種方法,我可以得到由細胞(標籤始終是唯一的):
NSInteger the_tag = ((UIView*)sender).tag;
UITableViewCell *updateCell = (UITableViewCell*)[tableView viewWithTag:the_tag];
是否有可能更新與此單元格方法?這不起作用:
updateCell.imageView.image = [UIImage imageNamed:@"lunch.png"];
編輯:
在反映,標籤是壞的方法使用。您可以使用(這將給你行和部分,如果你有一分段表):
- (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath {
NSLog(@"Tapped Row %@", indexPath);
UITableViewCell *cell = [self->tableView cellForRowAtIndexPath:indexPath];
cell.imageView.image = [UIImage imageNamed:@"lunch.png"];
}
爲什麼你更喜歡使用標籤?它很脆弱,在這種情況下它破壞了封裝。 – Abizern
我認爲你需要放置[self.tableView beginUpdates];在你的代碼和[self.tableView endUpdates]之前;在代碼後面,強制TableView更新其內容。 –
我同意,標籤是一個不好的方法!更新了我的答案。 – Colin