我创建了一个多用户项目可以点击不同的按钮。
以下问题可能会相位, 我实现了 gestureRecognizer ,这是正确的工作,但如何获取用户点击的按钮来访问那些按钮事件
以下屏幕显示按钮,
以下是gestureRecognizer委托方法的代码,以及如何获取按钮事件以及如何管理它,
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
if ([touch.view isKindOfClass:[UIButton class]]) {
NSLog(@"Button is pressed");
if (tag == 1) {
NSLog(@"Button1 is pressed");
}
return NO;
}
return YES;
}
按下按钮时,按照IBAction方法触摸的方法
-(IBAction)btnPress:(id)sender{
tag=[sender tag];
NSLog(@"%i",tag);
}
但是这里的问题是首先调用gestureRecognizer委托方法然后IBAction方法来解决这个问题,
提前感谢您花费在我的问题上的宝贵时间,
亲爱的 霓虹塞缪尔。
答案 0 :(得分:1)
如果按钮是UIButton的实例,则根本不需要使用gestureRecognizer。 尝试设置addTarget:action以在用户单击UIButton时获取回调:
[button1 addTarget:self action:@selector(btnPress:)];
[button2 addTarget:self action:@selector(btnPress:)];
如果您已经为每个按钮设置了标签值,那么您的IBAction方法将正常工作。
-(IBAction)btnPress:(id)sender{
NSInteger tag=[sender tag];
NSLog(@"%d",tag);
}