2012-04-15 18 views
0

2つのViewController、MyView 1とMyView 2を使用すると、MyView1.mからMyView2にサブビューを追加することは可能ですか?別のビューにサブビューを追加する

MyView2 * screen = [[MyView2 alloc]initWithNibName:nil bundle:nil]; 
[screen.view addSubView:mySubView]; 

をしかしMYVIEW 2の私の新しいインスタンスが右、MyView2の '目に見える' のViewControllerに接続されていません:

私が試してみましたか?

明らかにすると、表示されているViewControllerはMyView1です。 MyView1がMyView2ビューにサブビューを追加できるようにします。 MyView2はのUIViewControllerのサブクラスであると仮定すると、

おかげ

答えて

2

、これを試してみてください。たぶんそれはあなたが探しているようなものだ - あなたはMyViewController1全体のものを追加し続けることができるようにしたい場合は

MyViewController2 *myViewController2 = [[[MyViewController2 alloc] initWithNibName:nil bundle:nil] autorelease]; 

[myViewController2.view addSubView:mySubView]; 
// add any other views to myViewController2's view 

[self.view addSubView:myViewController2.view]; // adding the view to VC1's view 

、あなたはmyViewController2または保持財産としてのビューのいずれかを宣言する必要があります。

0

は、ViewControllerを、それ自体には何のaddSubView:方法がありません。代わりに、あなたはこのように、あなたのビューコントローラのviewにサブビューを追加したい:

[screen.view addSubview:mySubView]; 
+0

ありがとうございましたが、実際には問題ではありませんでした。私は既にコード内にscreen.viewを持っていました。問題は、MyView2のビューをMyView1から変更したいということです。 – Martol1ni

1
あなたはMyView2が再び表示されたときに、それはにサブビューを追加できるようにMyView1コントローラアプリに共通オブジェクトでいくつかの情報を保存可能性があり

必要に応じてそのビュー。

0

は、私はあなたが望むとviewControllersを混乱していると思う、または少なくともあなたの質問がある

[MyView1.view addSubView:MyView2]; 
[self.view addSubview:MyView1]; 
関連する問題