【发布时间】:2017-11-21 19:31:16
【问题描述】:
我正在使用带有两个操作的 tableview,删除和编辑。当我滑动显示动作时,editActionsForRowAtIndexPath: 数组中返回的第一个动作被自动调用
-(NSArray *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewRowAction *deleteAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"Delete" handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
// delete ...
}];
deleteAction.backgroundColor = [UIColor redColor];
UITableViewRowAction *edit = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@" Edit " handler:^(UITableViewRowAction *action, NSIndexPath *indexPath)
{
// edit ...
}];
edit.backgroundColor = [UIColor colorWithRed:0x2F/255.0 green:0x83/255.0 blue:0xFB/255.0 alpha:1];
return @[deleteAction,edit];
}
这里调用了删除操作。我希望在滑动时显示这些操作,但不要在不点击的情况下调用。
【问题讨论】:
-
我认为这不是问题。它应该在您滑动 tableviewcell 后调用。当您单击删除时,删除操作中编写的代码将被执行,所以我认为这不是问题。
-
你是说当你从右向左滑动时你的单元格会被删除?
-
完全正确,我不希望这样,我希望用户点击删除或编辑
-
添加视频,不选择handler是不可能调用自己的
-
显示您的删除代码?您到底在哪里编写删除功能的代码?
标签: ios objective-c uitableview