我使用 UIViewController(而不是 UITableViewController)创建了表,并将 UITableView 保留为其属性。我已经实现了数据源和委托协议的必要方法。但是当我单击"编辑"按钮时,我没有看到其单元格的任何删除(红色减号),因此我可以选择要删除的它们。如果我使用UITableViewController,同样可以正常工作。我已经实现了以下方法。
我错过了什么,它的行为方式与使用标准UITableViewController时的方式不同?
- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
[super setEditing:editing animated:animated];
self.navigationItem.rightBarButtonItem.enabled = !editing;
}
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
return UITableViewCellEditingStyleDelete;
}
它需要UITableView
切换到编辑状态:
[self.tableView setEditing:YES animated:YES];