我的所有视图控制器都扩展了我自己的BaseViewController:UIViewController,并且我已经覆盖了
- (BOOL)automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers {
return NO;
}
然而,iOS 5模拟器决定忽略这一点并继续在我的嵌套UIViewController层次结构上调用我的viewWillAppear等方法。
我在另一个项目中做了同样的事情并且工作正常。还有什么我不想让它听我的吗?
答案 0 :(得分:4)
原来你也必须使用这个方法:
UIViewController addChildViewController
通过这样做:
[self addChildViewController:_browserViewController];
[browserView addSubview:_browserViewController.view];
[_browserViewController didMoveToParentViewController:self];
..并从automaticForwardAppearanceAndRotationMethodsToChildViewControllers返回NO
...它会停止被调用两次的视图生命周期方法。