我有一个名为 myButton
的按钮,我给了它一个 UIGestureRecognizer
以便 IBAction
仅在 myButton 时运行
用两根手指按下:
UIGestureRecognizer *tapper = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(twoFingerTap:)];
[(UITapGestureRecognizer *) tapper setNumberOfTouchesRequired:1];
[newTaskButton addGestureRecognizer:tapper];
在添加手势识别器之前,我可以使用 sender
来引用刚刚按下的按钮,但是现在 sender
现在是手势识别器。我仍然需要引用按下的按钮......有什么办法可以这样做吗?一个简单的方法可以返回任何正在使用手势识别器的东西吗?谢谢!
最佳答案
UIGestureRecognizer
类有一个 view
属性,表示手势识别器附加到的 View ,在您的例子中是按钮。
- (void)twoFingerTap:(UIGestureRecognizer *)sender {
UIButton *myButton = (UIButton *)sender.view;
}
关于objective-c - 当 Action 的发送者是 UIGestureRecognizer 时引用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6835233/