我有一个这样的课程,
@interface event
{
NSString *name;
UIButton *button;
}
在我的视图控制器中,我有几个事件类对象,我将这些事件对象的所有按钮添加到视图控制器类(self.view)
-(void) buttonPressed:(id) sender
现在我正在处理上面给出的视图控制器中的touchevent,现在我如何识别按下的按钮(发送者)所属的事件对象。
答案 0 :(得分:0)
您应该为对象添加标记,例如:
myObject.tag = 1;
然后,在你的buttonPressed方法中执行类似
的操作if(sender.tag == 1){
//...doSomething
}
答案 1 :(得分:0)
您可以简单地将事件对象的button属性与action方法的sender参数进行比较。假设您的事件对象只是视图控制器的成员变量,您的buttonPressed代码可能如下所示:
- (void)buttonPressed:(id)sender {
if (sender == event1.button) {
NSLog(@"Button pressed for event1");
}
else if (sender == event2.button) {
NSLog(@"Button pressed for event2");
}
}
显然,您必须将按钮声明为Event对象的@property。