我有一个SEL
变量,我想在我的按钮选择器中设置。
我的代码是这样的:
GridView *ObjGridView=[[GridView alloc]initWithFrame:frame];
[[NSBundle mainBundle ] loadNibNamed:@"GridView" owner:ObjGridView options:nil];
CATEGORY *ObjCategory=[arrCategory objectAtIndex:index];
//do something
ICON *ObjIcno=[ObjCategory.arrIconObjects objectAtIndex:indexIcon];
[ObjGridView.button1 addTarget:self action:ObjIcno.handler forControlEvents:UIControlStateNormal];
ObjIcno.handler
是SEL变量(之前由选择器设置)
像这样:
arrSectonProductivityTools=[NSMutableArray arrayWithObjects:[[[ICON alloc]initWithIcon:@"firefox.png":@"Firefox":@selector(FirefoxCickEvent:)] autorelease],nil];
我以这种方式在我的班级设置选择器,设置正确,但我没有得到点击事件。
答案 0 :(得分:1)
[ObjGridView.button1 addTarget:self action:ObjIcno.handler forControlEvents:UIControlStateNormal];
应该是:
[ObjGridView.button1 addTarget:self action:ObjIcno.handler forControlEvents:UIControlEventTouchUpInside];
除了UIControlEventTouchUpInside之外的更多选项,请在UIControlEventTouchUpInside上单击cmd +鼠标。