だから私は次のように設定された NSViewController (MyVC) を持っています:
//MyVC.h
...
@property (nonatomic, retain) IBOutlet NSTextField *input;
...
//MyVC.m
...
@synthesize input;
- (id)init
{
self = [super initWithNibName: @"MyVC" bundle: [NSBundle mainBundle]];
NSLog(@"%@", input); //prints (null) always
return self;
}
- (void)loadView
{
[super loadView];
NSLog(@"%@", input); //still (null)
}
...
//MyVC.xib
Custom View [Referencing Outlet: File's Owner.view]
Text Field [Referencing Outlet: File's Owner.input]
これで、この NSViewController を ( 経由でMyVC *vc = [[MyVC alloc] init];
) ロードしてウィンドウにロードすると、テキスト フィールドが適切に表示されます。ただし、上記の貼り付け (およびいくつかの BAD_ACCESS) が示唆するようvc.input
に、テキスト フィールドを正しく指していません。
ノート:
- このプロジェクトは ARC を実行しています。
- これは単純化や一般化ではありません。私はこの正確なコードを無駄に実行しました。
- すべての IBOutlets は間違いなく適切に設定されています。