2011-09-07 9 views
0

Panelがビューでロードされる状況がありますが、ボタンをクリックすると、別のnibファイルにあるビューに切り替える必要があります。コントローラ。別のコントローラとペン先からのビューのロード

私はFoo.nibとBar.nibを持っていると言います。 Foo.nibはパネルとビューで、Bar.nibは単なるビューです。 FooControllerでは私のような行があります:

[NSBundle loadNibNamed:@"Foo" owner:self]; 

を、私は、私も考える必要があります。

[NSBundle loadNibNamed:@"Bar" owner:BarController]; 

を、ボタンがクリックされたときに、私はFooControllerで表示を切り替えますが、BarController GUI要素のすべてがありますBarControllerによって処理されません。これは正しい考えですか?もしそうならば、BarControllerがFooペン先に入っていても、Barペン先をロードすることができません。

答えて

1

おそらく3つのnibファイルを作成したいと思います.1つはPanel、Foo、Bar用です。次に、あなただけの

NSView *fooView = [fooController view]; 
[panelView addSubview:fooView]; 

を行うだろうか、意見を交換することができ、パネルに配置するNSViewControllerのFooControllerとBarControllerサブクラスを作成し、ビューを必要とする時はいつでもそう

FooController *fooController = [[FooController alloc] initWithNibName:@"Foo" bundle:nil]; 
BarController *barController = [[BarController alloc] initWithNibName:@"Bar" bundle:nil]; 

ようにそれらを作成することができますreplaceSubviewを使用して:と:

本当にあなたにもチュートリアルが含まれていることを感謝し、より完全な例here

+0

あります。ありがとう、トン。 –

関連する問題