我有一个UIView
基础类,它有自己的 XIB。让我们调用这个类MyClass
。所以我有MyClass.xib
和。MyClass.h
MyClass.m
我在故事板上有一个 UIView 对象,我将该对象的类设置为MyClass
.
我创建了一个新UIView
的 XIB,在 XIB 中,我将文件所有者的类更改为MyClass
. 我不知道我是否需要在 XIB 内部进行更多连接。
我想要的是:故事板加载MyClass.m
和加载MyClass.xib
,因此我有这个初始化代码:
- (instancetype)initWithCoder:(NSCoder *)aDecoder
{
self = [super initWithCoder:aDecoder];
if (self) {
NSString *className = NSStringFromClass([self class]);
self.view = [[[NSBundle mainBundle] loadNibNamed:className owner:self options:nil] firstObject];
[self addSubview:self.view];
return self;
}
return nil;
}
问题是这段代码陷入了无限循环。我猜又打了loadNibNamed
电话initWithCoder:
,应用程序崩溃了。
我怎么做?为什么要循环,在 xib 内部是否需要建立更多连接?