如何获取UITableView编辑模式下的系统自带手势?

1.创建UITableView
2.实现UITableView的代理方法 巴拉巴拉一串
3.方法实现//

  • (BOOL)tableView:(UITableView )tableView canEditRowAtIndexPath:(NSIndexPath )indexPath {
    return YES;
    }

// 这个方法可以不实现,默认会是响应滑动手势,显示“删除”按钮的效果。如果实现的话,一定要返回类型:UITableViewCellEditingStyleDelete。否则在cell上左右滑动时,不会出现“删除”按钮。

  • (UITableViewCellEditingStyle)tableView:(UITableView )tableView editingStyleForRowAtIndexPath:(NSIndexPath )indexPath {
    return UITableViewCellEditingStyleDelete;
    }

再是这个方法
-(void)tableView:(UITableView )tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath )indexPath
这些写完了... 一个UITableView的左滑基本完成.
然后,我重写了导航的手势.好了 这个UITableView的界面是push出来的,pop手势自定义的,so. 我再使用UITableView左滑的时候有的时候出现了左滑删除,有的时候没出现左滑删除.原因:手势冲突. 解决不了咋办? 我UITableView的控制器界面没设置手势啊,无法调用手势的代理方法获取UITableView的左滑编辑那个手势啊.求大牛救命吧.折腾半天了都.哎

阅读 4.2k
1 个回答

我也遇到过这个问题,就是手势冲突造成的,你可以通过设置任何一个滑动手势的代理为该ViewController, 遵守UIGestureRecognizerDelegate协议,实现下面的方法,这样做就是屏蔽掉了侧滑返回的手势。不过应该也有办法两个都实现,只是提供一个思路

代理方法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题