一尘不染

IBOutlet和IBAction

swift

在Xcode和Interface Builder中使用IBOutlet和IBAction的目的是什么?

如果我不使用IBOutlets和IBAction,有什么区别吗?


迅速:

@IBOutlet weak var textField: UITextField!

@IBAction func buttonPressed(_ sender: Any) { /* ... */ }

目标C:

@property (nonatomic, weak) IBOutlet UITextField *textField;

- (IBAction)buttonPressed:(id)sender { /* ... */ }

阅读 251

收藏
2020-07-07

共1个答案

一尘不染

IBActionIBOutlet是定义为表示可以在Interface Builder中引用的变量和方法的宏。

IBAction解析为voidIBOutlet解析为什么,但他们表示,以Xcode和接口生成器,这些变量和方法可以在Interface
Builder被用来链接UI元素在你的代码。

如果您根本不打算使用Interface
Builder,那么您的代码中就不需要它们了,但是如果要使用它,则需要为IBActionIB和IBOutlet对象指定方法。将在IB中使用。

2020-07-07