我有一个简单的分组uitableview,带有导航栏和“编辑”导航栏项。 “编辑”按钮仅适用于第一部分,而表格的其他部分则完全不同(请参阅iPhone设置)。我的问题是删除表的这个特定部分的最后一个单元格。每当用户删除最后一个单元格时,我将从导航栏中删除“编辑”按钮(因为它不再适用...)。
所以我这样做:
- (void)tableView:(UITableView *)aTableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
.....
if ([section count] == 0) {
self.navigationItem.rightBarButtonItem = nil;
.....
}
.....
}
问题是,现在其他部分不起作用,这意味着,我再也无法点击它们了,它们也没有反应。我认为这是因为我没有点击导航栏上的“完成”,因为在删除最后一个单元格后删除了这个,所以我基本上仍处于“编辑模式”(不确定我是否在这里......)。
在任何情况下,我都试图在删除最后一个单元格后手动调用setEditing:animated:但这没有帮助。
供参考:
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
NSLog(@"****************** entering setEditing:animated");
[super setEditing:editing animated:animated];
[tblSimpleTable setEditing:editing animated:animated];
}
对此的任何帮助将不胜感激。谢谢!
答案 0 :(得分:0)
您是否尝试过 UITableView * 方法 reloadSections:withRowAnimation: 之后
[tblSimpleTable setEditing:editing animated:animated];
在iOS 5上正常工作。可能会在较低版本上出错。