iOS5
およびのような新しいメソッドを使用して、コンテナ ビュー コントローラを作成しようとしていますaddChildViewController
。
addSubview
電話した後で電話しないといけないんですかaddChildViewController
?
removeFromSuperview
電話する前に電話しなければなりませんかremoveChildViewController
?
Apple のドキュメントにはこれについて何も記載されていません。どう思いますか?
ベストアンサー1
1) addChildViewController を呼び出した後に addSubview を呼び出す必要がありますか?
はい
2) removeChildViewController を呼び出す前に、removeFromSuperview を呼び出す必要がありますか?
全然違う
removeFromParentViewController:
代わりに電話するべきです。removeChildViewController:
また電話するべきです。willMoveToParentViewController:
追加/削除については、この優れたカテゴリを参照してください。
- (void)containerAddChildViewController:(UIViewController *)childViewController {
[self addChildViewController:childViewController];
[self.view addSubview:childViewController.view];
[childViewController didMoveToParentViewController:self];
}
- (void)containerRemoveChildViewController:(UIViewController *)childViewController {
[childViewController willMoveToParentViewController:nil];
[childViewController.view removeFromSuperview];
[childViewController removeFromParentViewController];
}