[英]Instantiating UIView subclass loaded from xib
我有一个UIView子类,它是从xib文件加载的。 在我的CustomView.h文件中,我只是忽略了initWithFrame:方法中的CGRect参数:
- (id)initWithFrame:(CGRect)frame {
self = [[[NSBundle mainBundle] loadNibNamed:@"CustomView" owner:nil options:nil] objectAtIndex:0];
return self;
}
现在我的问题是: 每当实例化自定义视图时,我应该传递的帧是什么?
例如,我尝试了这个:
CustomView *cv = [[CustomView alloc] initWithFrame:CGRectZero];
有人会假设因为框架是在xib中设置的,所以在这里传递什么都没有关系。 但是,这导致我的自定义视图对用户交互无响应。
您可能应该改用initWithCoder
- (id)initWithCoder:(NSCoder*)coder {
self = [super initWithCoder:coder];
if (self){
// Initialization code
}
return self;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.