我错过了一些重要的东西。不完全确定它是什么。
我有一个自定义视图子类。我创建了一个 xib 文件来设计它的布局。我连接了四个按钮作为班级的插座。
#import <UIKit/UIKit.h>
@interface MCQView : UIView
@property (strong, nonatomic) IBOutlet UIButton *btn1;
@property (strong, nonatomic) IBOutlet UIButton *btn2;
@property (strong, nonatomic) IBOutlet UIButton *btn3;
@property (strong, nonatomic) IBOutlet UIButton *btn4;
然后我有
#import "MCQView.h"
@implementation MCQView
@synthesize btn1,btn2,btn3,btn4;
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
[self addSubview:[[[NSBundle mainBundle] loadNibNamed:@"MCQView" owner:self options:nil] objectAtIndex:0]];
NSLog(@"%@", btn1);
return self;
}
然后我通过以下方式将视图添加到另一个视图控制器initWithFrame
:
当我尝试记录 btn1 以查看它是否存在时,它会打印 null。我认为这是因为我还没有初始化它,但我不确定该怎么做,考虑到如果我将它创建为一个新按钮,那么 xib 中的所有东西都将毫无用处?