【发布时间】:2011-09-12 16:14:25
【问题描述】:
情况:当用户选择一个单元格时,会向该单元格添加一个按钮。当他们选择一个新单元格时,该按钮将从前一个单元格中删除并添加到新单元格中。这样可行。问题是当更多数据添加到表中时。所以假设有 20 个单元格,然后我添加另外 20 个单元格。然后我选择第一个单元格,但是按钮被添加到单元格 1 和单元格 21。尽管选择委托方法只注册第一个被选中的单元格。
来自我的 didSelectRowAtIndexPath 方法:
if (self.selectedCell) {
self.selectedCell.accessoryView = nil;
self.selectedCell = nil;
}
UIButton *downloadButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[downloadButton setTitle:@"Download" forState:UIControlStateNormal];
[downloadButton setFrame:CGRectMake(0, 0, 130, 34)];
self.selectedCell = [self.tableView cellForRowAtIndexPath:indexPath];
self.selectedCell.accessoryView = downloadButton;
[self.selectedCell setNeedsDisplay];
在我将更多数据添加到我以结束的表中的方法中:
if(self.selectedCell){
self.selectedCell.accessoryView = nil;
self.selectedCell = nil;
}
[self.tableView reloadData];
[self.tableView setNeedsLayout];
【问题讨论】:
标签: ios uitableview