在tableview中,我在每个单元格上都有一个UILongPressGestureRecognizer
,我这样添加:
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc]
initWithTarget:self
action:@selector(TableCellLongPressed:)];
longPress.minimumPressDuration = 0.5f;
[cell addGestureRecognizer:longPress];
[longPress release];
现在我有以下问题我希望用户能够重新排列tableview中的单元格,所以我有一个按钮将tableView设置为EditMode,如下所示:
[self.myTableView setEditing:!self.myTableView.editing animated:YES];
现在当用户试图拖动一个单元并且没有将它拖得足够远时,longPress会激活他的动作,这对用户来说非常烦人,导致另一个视图被推动。
当tableView在EditMode中时,如何暂停或禁用UILongPressGestureRecognizer
答案 0 :(得分:5)
您应该为此方法实现UIGestureRecognizerDelegate委托:
gestureRecognizer:shouldReceiveTouch:
在方法中,检查您是否正在编辑表格,如果是,则返回NO。
添