如何在Obj C中的同一视图屏幕中删除一个表中的滑动删除按钮而不是另一个表中的滑动删除按钮?

uts*_*iem 3 iphone objective-c uitableview

在iPhone应用程序中,我在同一屏幕中使用两个不同的tableviews.现在,我想在一个表视图中使用滑动删除功能,但在另一个表视图中不使用.但是当我调用委托方法'commiteditingstyledelete'来获取表视图中的滑动删除按钮时.如何从其他表中删除它?我无法禁用行用户交互,因为我在tableview行中有一些文本字段.请建议.

Mat*_*Mat 5

在用于编辑单元格的委托回调中,您必须检查要使用的表格,可以为每个tableView设置标记,或者使用ivars检查实例,因此:

1:用ivars

if(tableView==yourTableViewClassVar){
  //your table
}
Run Code Online (Sandbox Code Playgroud)

2:带标签

set the tag 
tableView.tag=10;
Run Code Online (Sandbox Code Playgroud)

...然后在回调中

if(tableView.tag==10){
   //your table
}
Run Code Online (Sandbox Code Playgroud)

编辑:

问题是,即使我在Table2上滑动,也会调用commiteditingstyle方法并显示删除按钮.

你还必须在这个回调中检查单元格的设置样式:

  - (UITableViewCellEditingStyle)tableView:(UITableView *)tableView 
editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
        if (tableView.tag==10) {
            return UITableViewCellEditingStyleNone;
        }else{
            return UITableViewCellEditingStyleDelete;
        }
    }
Run Code Online (Sandbox Code Playgroud)