在重用UITableViewCell时按下Delete按钮后,iPhone UITableView缺少公开按钮

时间:2009-04-20 09:01:22

标签: ios objective-c iphone uitableview

我有一个显示自定义UITableView的iPhone UITableViewCell,其右侧显示的是披露按钮图标。
当我滑动单元格时,显示按钮会自动被红色的“删除”按钮替换。如果我按下“删除”按钮,则会从表中删除该行,但之后会发生奇怪的事情 当我滚动表格并且删除的单元格重复使用时,数据已正确加载但公开按钮缺失

我尝试重置prepareForReuse方法中的按钮,但没有成功。

我不明白我缺少什么,因为行为看起来与Mail应用程序相同,所以它应该由iPhone OS本机支持。

顺便说一句:UITableViewCell是从NIB加载的。

1 个答案:

答案 0 :(得分:5)

似乎我已经通过添加

解决了这个问题
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

这行代码:

[cell setAccessoryType:UITableViewCellAccessoryDetailDisclosureButton];

我认为这条线对于正常细胞是无用的,但在删除后重复使用的细胞恢复正确的细胞行为...

无论如何要删除我在

中使用的行
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath 

这(我猜)标准线:

 [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:YES];

由于 斯特凡诺