在 Xcode 和 Interface Builder 中使用 IBOutlets 和 IBActions 的目的是什么?
如果我不使用 IBOutlets 和 IBActions 会有什么不同吗?
swift :
@IBOutlet weak var textField: UITextField!
@IBAction func buttonPressed(_ sender: Any) { /* ... */ }
Objective-C :
@property (nonatomic, weak) IBOutlet UITextField *textField;
- (IBAction)buttonPressed:(id)sender { /* ... */ }
最佳答案
IBAction
和 IBOutlet
是定义为表示可以在 Interface Builder 中引用的变量和方法的宏。
IBAction
解析为 void
而 IBOutlet
解析为空,但它们向 Xcode 和 Interface builder 表明可以使用这些变量和方法在界面生成器中将 UI 元素链接到您的代码。
如果您根本不打算使用 Interface Builder,那么您的代码中就不需要它们,但如果您打算使用它,那么您需要指定 IBAction
对于将在 IB 中使用的方法和 IBOutlet
对于将在 IB 中使用的对象。
https://stackoverflow.com/questions/1643007/
相关文章:
objective-c - 何时使用 enumerateObjectsUsingBlock 与 fo
objective-c - 开发像 Facebook 新 iOS 应用程序中的侧滑菜单的最佳方法是什
ios - 如何在没有自定义单元格的情况下将文本包装在 UITableViewCell 中
objective-c - 在 Objective-C 中创建常量的最佳方法是什么
ios - UITableView、Separator颜色在哪里设置?
ios - UIButton:如何使用 imageEdgeInsets 和 titleEdgeIns