Objective c IB插座在XIB视图上为零

Objective c IB插座在XIB视图上为零,objective-c,xcode,interface-builder,xib,Objective C,Xcode,Interface Builder,Xib,我有一个UIView子类,它对应于XIB。我在Interface Builder中设计的UITableViewCell中使用此UIView。当对单元格进行排队时,我有一个从单元格到自定义视图的正确引用,但是自定义视图的IBOutlet是nil 下面是一个显示问题的示例项目 我做错了什么 干杯, Jan我认为UITableViewCell的工作方式并非如此,将其定义为IBOutlet不会加载所有子视图,因此您必须使用[NSBundle mainBundle]loadNibNamed:@“owne

我有一个
UIView
子类,它对应于XIB。我在Interface Builder中设计的
UITableViewCell
中使用此UIView。当对单元格进行排队时,我有一个从单元格到自定义视图的正确引用,但是自定义视图的IBOutlet是
nil

下面是一个显示问题的示例项目

我做错了什么

干杯,
Jan

我认为UITableViewCell的工作方式并非如此,将其定义为IBOutlet不会加载所有子视图,因此您必须使用[NSBundle mainBundle]loadNibNamed:@“owner:self]从包中加载它;并将其分配给您的项目视图,现在它已正确加载。在xib中,我将文件所有者设置为
TAItemTitleView
,将类设置为UIView。然后,我将xib加载到
TAItemTitleView
本身中

- (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;
}

我在
TAItemTitleView
类中就是这么做的(),但它创建了一个无休止的循环。我做的和文章中描述的一样,我只添加了一个普通视图,图像视图的IBOutlet也是零,你必须从你的单元格中的bundle加载,而不是从同一个类加载,这就是为什么它会无限循环!由于每次从包加载时都使用initWithCoder,因此它将再次调用相同的方法,从而调用无限循环!我该怎么做?谁是要加载的nib的“所有者”?