如何inheritance具有.xib文件的自定义视图
有一个自定义视图,由类和xib文件组成。 我用它
[[NSBundle mainBundle] loadNibNamed:@"myViewNib" owner:self options:nil];
问题是如何inheritance这个自定义视图。
我inheritance了myViewClass,但是我不能使用上面的代码来创build一个实例。我想我错了。
一个选项不是在MYBaseView
文件中创buildMYBaseView
本身,而是子视图。 这样你就可以轻松地inheritanceMYBaseView
。
这是代码应该正常工作,如果您以编程方式或在Interface Builder中创build视图对象:
- (id)initWithCoder:(NSCoder *)aDecoder { self = [super initWithCoder:aDecoder]; if (self) { [self setUp]; } return self; } - (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { [self setUp]; } return self; } - (void)setUp { UIView *view = [[[NSBundle mainBundle] loadNibNamed:NSStringFromClass([self class]) owner:self options:nil] lastObject]; [self addSubview:view]; }
它应该是:
myViewClass *newView = [[NSBundle mainBundle] loadNibNamed:@"myViewNib" owner:self options:nil];