2011-04-04 13 views
1

UIViewControllerのビューを子ビューとして追加および削除する正しい方法は何ですか。UIView:サブビューとしてのUIViewControllerのビューの追加とその削除

UIViewController *myViewControler = [[UIViewController alloc] init]; 
[someAnotherView addSubview:myViewController.view]; 

質問1:私はaddSubview:コールの後myViewController.viewを解放すべき だから、持つのUIViewControllerは、次のように私は階層表示するために、そのビューを追加することができ、初期化?

私は呼んビュー階層からmyViewControllerのビューを削除したい場合は[myViewController.view removeFromSuperview];

質問2:どのように私はmyViewControllerインスタンスがビューremovedFromSuperview後、この場合に解放する必要がありますか?

答えて

0
  1. ビューを解放する必要はありません。所有しているビューコントローラがこれを行います。

  2. 私は通常、ヘッダーにmyViewControllerの宣言を入れて、それを実行すると(通常のフローのどこか、またはビューコントローラを含むdeallocのいずれかで)解放してnilします。

+0

2について:私はちょうどmyViewControllerそのビューを解放した場合、私は正しい理解を持っている場合、それは[myViewController.view removeFromSuperview]に正しくなります。この場合のように、...、削除されません。そして[myViewController release]? – user478681

+0

それは正しいです、ビューを削除し、不要になった時点でコントローラを解放してください。 –

関連する問題