我想更改 UIButton 的操作,触摸按钮时会出现异常。
[grabRedeem removeTarget:self action:@selector(grabbOffer:) forControlEvents:UIControlEventTouchUpInside];
[grabRedeem addTarget:self action:@selector(redeemOffer:) forControlEvents:UIControlEventTouchUpInside];
grabbOffer和redeemOffer是没有参数的IBActions。
由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [DetailViewController grabbOffer:]:无法识别的选择器发送到实例0x1e8bf0'
可能是什么原因?
答案 0 :(得分:3)
您是否尝试删除冒号:
[grabRedeem removeTarget:self action:@selector(grabbOffer) forControlEvents:UIControlEventTouchUpInside];
[grabRedeem addTarget:self action:@selector(redeemOffer) forControlEvents:UIControlEventTouchUpInside];
如果要使用参数,请使用分号:
-(void)grabbOffer:(id)sender;
答案 1 :(得分:1)
如果你的函数没有参数使用:@selector(grabbOffer)而不是@selector(grabbOffer:)