iOS / iPhone:UIView没有为NSMutableArray添加元素(包含UILabel对象)

时间:2012-11-27 13:19:44

标签: uiview nsmutablearray uilabel

我有 UIView ,其中我编写了以下方法:

- (void)drawLabels:(NSMutableArray*)labelArray{
  for (int i=0; i<[labelArray count]; i++) {        
    CGRect labelFrame = CGRectMake(0, 0, 50, 50);
    labelFrame = CGRectInset(labelFrame, 5, 5);
    UILabel *label = (UILabel*)[labelArray objectAtIndex:i];
    [self addSubview:label];    

}

代码因以下错误而崩溃:

  

- [UIDeviceRGBColor superview]:无法识别的选择器发送到实例0x6e397c0   2012-11-27 18:37:33.559 QuartzSample [57621:f803] *由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [UIDeviceRGBColor superview]:无法识别的选择器发送到实例0x6e397c0'   * 第一次抛出调用堆栈:   (0x13cf022 0x1560cd6 0x13d0cbd 0x1335ed0 0x1335cb2 0x55e4f 0x5014b 0x4398 0x38a1 0xe0a1e 0x3f401 0x3f670 0x3f836 0x4672a 0x292b 0x17386 0x18274 0x27183 0x27c38 0x1b634 0x12b9ef5 0x13a3195 0x1307ff2 0x13068da 0x1305d84 0x1305c9b 0x17c65 0x19626 0x2632 0x25a5)   终止调用抛出异常(lldb)

我希望将标签放在视图上,包含所有格式(颜色,字体,大小等)。 此外,当我把以下代码:

NSLog(@"%@",[labelArray objectAtIndex:i]);

我在控制台中获得以下内容:    UIDeviceRGBColorSpace 0 1 0 0.3

任何人都可以详细说明吗?

1 个答案:

答案 0 :(得分:0)

  1. 您似乎是设置labelFrame,但您没有使用它。
  2. 在使用addSubView之前,请确保label不是nil
  3. 配置通过UILabel作为参数的setFont:使用UIFont方法的字体和大小
  4. 配置通过.textColor作为参数
  5. 的颜色使用UIColor属性