我正在学习 ObjC 和 iOS 开发。我在我的应用程序中使用的每个组件都是以编程方式创建的( View 、按钮、标签等)。
这是我的代码
...
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[self.btn addTarget:self
action:@selector(someAction:)
forControlEvents:UIControlEventTouchDown];
....
-(void)someAction
{
logic
}
我注意到我可以使用 void 而不是 IBAction 作为选择器的返回类型。这是正确的方法吗? 会不会有什么陷阱?
最佳答案
使用 IBAction
告诉 Xcode 您希望该方法在 Interface Builder 中作为操作方法可用。这是唯一的效果。否则它与 void
相同。事实上,在 UINibDeclarations.h
中,您会发现:
#define IBAction void
即使您不使用 nib 文件,使用 IBAction
也是一个好主意,因为它向读者(您或您的同事)发出信号,表明您打算将该方法用作操作一个 UI 控件。
关于objective-c - 使用 void 而不是 IBAction 作为方法的返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9143560/