将 LongPressGestureRecognizer 添加到 UITableViewCell
Adding LongPressGestureRecognizer to UITableViewCell
我有一个自定义的 UITableView 单元格,我想向它添加一个长按手势识别器。目前,我是这样做的:
longPressGesture.minimumPressDuration = 1.0
longPressGesture.addTarget(self, action: "testFeedback")
cell.addGestureRecognizer(longPressGesture)
我正在以编程方式执行此操作,因为我找不到检测 IBAction 中哪个单元格被点击的好方法。但是,我很难让它工作我想通过选择器传递一个参数。我不反对在情节提要中这样做,但希望得到一些指导。
谢谢!
testFeedback 函数应该如下所示
func testFeedback(gestureRecognizer:UIGestureRecognizer) {
if (gestureRecognizer.state == UIGestureRecognizerState.Ended) {
var point = gestureRecognizer.locationInView(self.tableView)
if let indexPath = self.tableView.indexPathForRowAtPoint(point)
{
println(indexPath.row) /// long press ended
}
}
else if (gestureRecognizer.state == UIGestureRecognizerState.Began){
/// long press started
}
}
我有一个自定义的 UITableView 单元格,我想向它添加一个长按手势识别器。目前,我是这样做的:
longPressGesture.minimumPressDuration = 1.0
longPressGesture.addTarget(self, action: "testFeedback")
cell.addGestureRecognizer(longPressGesture)
我正在以编程方式执行此操作,因为我找不到检测 IBAction 中哪个单元格被点击的好方法。但是,我很难让它工作我想通过选择器传递一个参数。我不反对在情节提要中这样做,但希望得到一些指导。
谢谢!
testFeedback 函数应该如下所示
func testFeedback(gestureRecognizer:UIGestureRecognizer) {
if (gestureRecognizer.state == UIGestureRecognizerState.Ended) {
var point = gestureRecognizer.locationInView(self.tableView)
if let indexPath = self.tableView.indexPathForRowAtPoint(point)
{
println(indexPath.row) /// long press ended
}
}
else if (gestureRecognizer.state == UIGestureRecognizerState.Began){
/// long press started
}
}