我在我的UITableView
中使用了“滑动删除”功能。在过去,它可以正常工作。
自从我将我的项目升级到iOS7后,单元格不会退出“滑动”状态。因此,当我点击删除按钮时,虽然调用了-tableView:commitEditingStyle:forRowAtIndexPath:
方法,但它并没有再次隐藏按钮。
我是否需要手动执行此操作,因为在iOS7中需要这样做?如果是,请问我应该使用哪个方法?
我在我的UITableView
中使用了“滑动删除”功能。在过去,它可以正常工作。
自从我将我的项目升级到iOS7后,单元格不会退出“滑动”状态。因此,当我点击删除按钮时,虽然调用了-tableView:commitEditingStyle:forRowAtIndexPath:
方法,但它并没有再次隐藏按钮。
我是否需要手动执行此操作,因为在iOS7中需要这样做?如果是,请问我应该使用哪个方法?
tableView:didEndEditingRowAtIndexPath:
不再被调用(不知道为什么)。tableView:commitEditingStyle:forRowAtIndexPath:
中调用[tableview reloadData]
,而不是在tableView:didEndEditingRowAtIndexPath:
中调用。这在iOS 6和7中有效。- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
[myDataSource removeObjectAtIndex:indexPath.row];
[myTable reloadData];
}
}
-reloadRowsAtIndexPaths:withRowAnimation:
。这样可以使动画更加流畅。但仍然很糟糕 :( - Julian F. Weinert