2011-11-21 8 views
0

私は2つの異なるxibファイル(メインウィンドウとメインメニュー)から同じIBActionを呼び出しています。メインウィンドウをメニューから呼び出すと、mainWindowがnullになるのはなぜですか?

- (IBAction)showEditor:(id)sender 
{ 
... [document mainWindow]; 
} 

ただし、メニューからshowEditorを呼び出すと、mainWindowはnullになります。しかし、私は理解していない:bBoth xibファイルは、アプリケーションの起動時に初期化されるので、メニュー項目をクリックするとすべてが初期化されるはずです。

おかげ

+0

「両方のxibファイルがアプリケーションの起動時に初期化されました」について詳しく説明できますか? xibファイルを初期化するには? –

+0

@Laurent Etiembleこのプロジェクトは私のものではなく、どのように初期化されているのかわかりません(私はすでに画面に表示されています)。しかし、私は、それぞれのクラス(Interface Builder InspectorパネルのClass Identityフィールドで指定された)が初期化されると、それらが初期化されると思われます。 – aneuryzm

+0

'document'アウトレットを保持するオブジェクトは何ですか? –

答えて

1

たぶんdocumentもnullですか?それはなぜ[document mainWindow]がnullであるのかを説明します。あなたの2つのインスタンスdocumentが同じかどうかを確認してください。

+0

また、文書もnullです。コードは同じですが、おそらく同じクラスを2つの異なるxibにインポートすると、2つの異なるインスタンスが作成されますか? – aneuryzm

関連する問題