【问题标题】:Setting Text Color on all items in IBOutletCollection在 IBOutletCollection 中的所有项目上设置文本颜色
【发布时间】:2010-12-20 09:01:57
【问题描述】:

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

    @interface IBOutletCollectionViewController : UIViewController {


    IBOutletCollection (UILabel) NSArray *multipleLabels;

}

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

@end

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

对成员“textColor”的请求 不是结构或联合的东西

我认为这是因为 NSArray !有什么解决办法吗?

【问题讨论】:

  • 你能贴出你如何尝试设置属性的代码吗?
  • 例如:“multipleLabels.textColor = [UIColor redColor];”

标签: iphone objective-c sdk


【解决方案1】:

您可以使用Key-Value Coding 设置数组中每个标签实例的属性:

[multipleLabels setValue:[UIColor redColor] forKey:@"textColor"];

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

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

[multipleLabels makeObjectsPerformSelector:@selector(setTextColor:) withObject:[UIColor redColor]];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-11
    • 2012-09-13
    • 2020-01-14
    • 2015-10-06
    • 1970-01-01
    • 2021-10-12
    相关资源
    最近更新 更多