次の場合:
-ドキュメントベースのアプリケーションプロジェクトを作成します。
-私がCustomViewと呼ぶNSViewから継承するクラスを作成します。
-ビューをdocument.xibにドラッグし、そのクラスをCustomViewに設定します。
-ビューをドキュメントに接続します。これをcustomViewと呼びます。
-ドキュメントにIBActionを追加します。これをFooと呼びます。
-mainmenu.xibファイル内のこのIBActionをメニュー項目に接続します。
次に、IBAction内では、すべてのアウトレットはnilです。
- (IBAction) Foo: (id) sender
{
NSLog(@"%p",customView);
}
0x0を出力します。
この問題は、すべてのIBOutletで発生し、IBActionがメニュー項目にリンクされている場合にのみ発生します。代わりにインスタンス変数を出力しようとすると、正しい値になります。