我有一个带有工具栏的 xib,上面有 2 个按钮,全部用 IB 制作。
我可以将插座连接到按钮,但是当我单击它们时,该方法不会被触发?
这是为什么?
在我的头文件中我有这个:
@property (nonatomic, retain) IBOutlet UIBarButtonItem *cancelEntry;
@property (nonatomic, retain) IBOutlet UIBarButtonItem *saveEntry;
-(IBAction) cancelEntry:(id) sender;
-(IBAction) saveEntry:(id) sender;
在我的 .m 文件中我得到了这个:
-(IBAction) cancelEntry:(id) sender {
NSLog(@"cancel");
}
-(IBAction) saveEntry:(id) sender {
NSLog(@"save");
}
所有内容均按预期进行编译,但单击按钮时日志中没有任何内容。
我应该怎么做才能让它发挥作用?
听起来您将插座连接到按钮,但没有将按钮连接到操作。
- 右键单击取消
UIBarButtonItem
在界面生成器中。
- 将鼠标悬停在选择器上,然后将显示的 + 拖动到文件所有者上。
- 将其连接到cancelEntry:。
- 重复保存。
而不是使用(id)
对于您的 IBActions,您可能应该使用(UIBarButtonItem *)
。这将阻止您将不同的对象类型连接到这些 IBAction。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)