我对长按手势识别器有一个有趣的问题。我将其中一个放在UITableView上,只有在长按后抬起手指才会起作用。所以基本上,我会把手指放在一个单元格上,然后当我抬起手指时,它会触发长按。我通过在长按开始和结束时放printn
来解决这个问题,并且在我抬起手指后都开火了。我认为tableViews默认panGestureRecognizer
可能会干扰longPressGestureRecognizer
。这是viewDidLoad
中的代码:
var longPress:UILongPressGestureRecognizer = UILongPressGestureRecognizer(target: self, action: "handleLongPress:")
longPress.minimumPressDuration = 0.06
longPress.delegate = self
self.tableView.addGestureRecognizer(longPress)
longPress.requireGestureRecognizerToFail(self.tableView.panGestureRecognizer)
答案 0 :(得分:2)
在单元格中触摸不会导致表格视图的panGestureRecognizer失败,因此请删除requireGestureRecognizerToFail方法,然后在手指静止时应该进入.Began状态。