在IBOutletCollection中的所有项目上设置文本颜色

Mom*_*omi 3 iphone sdk objective-c

我有几个IBOutlet并将它们与IBOutletCollection一起使用:

    @interface IBOutletCollectionViewController : UIViewController {


    IBOutletCollection (UILabel) NSArray *multipleLabels;

}

@property (nonatomic , retain) IBOutletCollection (UILabel) NSArray *multipleLabels;

@end
Run Code Online (Sandbox Code Playgroud)

但是当我想使用UILable属性时,编译器会给出以下错误:

请求成员'textColor'不是结构或联合

我认为这是因为NSArray!那有什么解决方案吗?

And*_*rew 12

您可以使用键值编码在数组中的每个标签实例上设置属性:

[multipleLabels setValue:[UIColor redColor] forKey:@"textColor"];
Run Code Online (Sandbox Code Playgroud)

"IBOutletCollection(UILabel)"可以在iVar声明中省略,只要它在属性声明中使用即可.

另一种选择是在NSArray实例上调用"makeObjectsPerformSelector:":

[multipleLabels makeObjectsPerformSelector:@selector(setTextColor:) withObject:[UIColor redColor]];
Run Code Online (Sandbox Code Playgroud)