如何在 iPhone 中查找何时触摸或捏住 tableView 单元格?
我有一个 tableView 已完成填充视图。当我点击单元格 tableView:didSelectRowAtIndexPath: 时被触发,但是当我编写 TouchBegan:withEvent 来查找 tableView 的触摸和捏合事件时,它没有被触发。 Tableview 位于视图上方是未触发的原因,如果是,如何查找何时 tableView 或其特定单元格被触摸或捏住。
我找到了一种在表视图单元格中查找捏合或触摸的方法,声明 UIPinchGestureRecognizer tableView中第一个对象:didSelectRowAtIndexPath: 即
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handlePinch:)];
[tblAccountsList addGestureRecognizer:pinch];
[pinch release];
然后在下面编写选择器方法...
- (void)handlePinch:(UIGestureRecognizer *)recognizer {
NSLog(@"Pinch");
}
当我设置断点时它正在执行,但该方法被调用了 3 次。 如果有人找到解决方案,请分享...
提前致谢...
I have a tableView completed fill on view. when i tapped on a cell tableView:didSelectRowAtIndexPath: is getting fired, but when i wrote touchesBegan:withEvent to find touch and Pinch events of a tableView it was not fired. Tableview is above the view is that the reason of not firing, if yes how to find when tableView or its certain cell is touched or pinched.
I found a way to find Pinch Or touch in a Table View cell, declare UIPinchGestureRecognizer
object first in tableView:didSelectRowAtIndexPath:
i.e
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handlePinch:)];
[tblAccountsList addGestureRecognizer:pinch];
[pinch release];
then write the selector method below...
- (void)handlePinch:(UIGestureRecognizer *)recognizer {
NSLog(@"Pinch");
}
when i set breakpoint it is executing, but the method was getting called for 3 times.
If any one find the solution share it please...
Thanks in advance...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
TouchBegan 是 UIView 和 UITableViewCell 方法,而不是 UIViewController 和 UIViewController 方法。 UITableViewController 方法。因此,您可以为 UITableViewCell 创建自定义类,它可以识别触摸事件和触摸委托,它正在为我工作。
在表视图中您可以添加
touchesBegan is a UIView and UITableViewCell method rather than a UIViewController & UITableViewController method. so you may create the the custom class for UITableViewCell it recognize the touch event and touch delegate it is working for me.
In Table view you can add
它被调用了 3 次,因为每次手势识别器的状态发生变化时都会调用它,而不是每次识别手势时都会调用它:)
尝试此更改:
并查看 手势识别器这里,特别是
state
属性。It's being called 3 times because it's called each time the state of the gesture recogniser changes, not each time the gesture is recognised :)
Try this change :
And check out the docs for gesture recognisers here, specifically the
state
property.