I'm trying to create a container view controller using iOS5
and new methods like addChildViewController
.
Do I have to call addSubview
after calling addChildViewController
?
Do I have to call removeFromSuperview
before calling removeChildViewController
?
I don't see anything about this in Apple docs. What do you think?
1) Do I have to call addSubview after calling addChildViewController?
Yes
2) Do I have to call removeFromSuperview before calling removeChildViewController?
Not quite
You should call removeFromParentViewController:
instead of removeChildViewController:
You should also call willMoveToParentViewController:
For adding / removing, you can refer to this great category :
- (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];
}