私は何か重要なものを見逃しています。それが何であるか正確にはわかりません。
カスタム ビュー サブクラスがあります。そのレイアウトを設計するために xib ファイルを作成しました。4 つのボタンをコンセントとしてクラスに接続しました。
#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のすべてが役に立たなくなることを考えると、その方法が正確にはわかりませんか?