如何访问UIView的子类的成员

时间:2013-04-30 14:37:08

标签: ios objective-c

我有自定义视图

@interface Slip : UIView{

  UIButton *number1;

}

@property (nonatomic, assign) IBOutlet UIButton *number1;
@end

使用nib文件,“Slip”是nib文件的文件所有者。

我在ViewController中初始化View,如下所示:

self.slip1 = [[[NSBundle mainBundle]loadNibNamed:@"SlipNib" owner:self options:nil] objectAtIndex:0];
[self.slip1 setFrame:CGRectMake(0.0f, 0.0f, 307.0f, 322.0f)];
[self.slips addSubview:self.slip1];

现在我想访问Slip的成员

[self.slip1.number1 setSelected:YES];

此行抛出异常

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<ViewController 0x755e9d0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key number1.'

如何访问该成员(number1)。我的ViewController中有12个这样的视图,需要单独访问它们。任何帮助非常感谢。

1 个答案:

答案 0 :(得分:3)

听起来您没有将IBOutlet连接到Interface Builder中的按钮。您应该右键单击并从“文件所有者”拖动到该按钮,然后选择button1。

这是与IBOutlet没有正确链接到按钮相关的问题,因为笔尖在引擎盖下使用KVC。您可能还需要将笔尖的根视图连接到IBOutlet子类中的UIView

如果您需要有关如何从笔尖加载UIView子类的更多信息,请在此处查看我的其他帖子

UIView is not showing up in UIScrollView