IBOutletCollection 的使用

你是否遇到过以下这种需求?一整排的按钮,然后状态需要单独控制。

Buttons

于是你的代码如下:

@interface ViewController ()
@property (nonatomic, weak) IBOutlet UIButton *button0;
@property (nonatomic, weak) IBOutlet UIButton *button1;
@property (nonatomic, weak) IBOutlet UIButton *button2;
@property (nonatomic, weak) IBOutlet UIButton *button3;
@property (nonatomic, weak) IBOutlet UIButton *button4;
@end

功能都能实现,但是 太丑了 !这时,IBOutletCollection 就派上用场了。如下图所示,在弹出框中选择 Outlet Collection,并将之后所有的 UIButton 都连接到它上,就可以通过 buttons 数组来访问按钮了。

IBOutletCollection

代码也简洁不少:

@interface ViewController ()
@property (strong, nonatomic) IBOutletCollection(UIButton) NSArray *buttons;

@end