iOS开发小记之Appearance方法

从iOS 5开始,UIViewController会自动调用subviews中,单独UIViewController的Appearance相关方法(即使没有调用addChildViewController也会),如:

viewWillAppear:

viewDidAppear:

viewWillDisappear:

viewDidDisappear:

在一些复杂的界面中通常这个特性非常有用,因为可能会需要对某部分界面创建自己的UIViewController。但有时还是希望自己维护这类视图状态方法,在iOS 5中需要重写这个方法:

– (BOOL)automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers

iOS 6中这个方法被分成了2个

– (BOOL)shouldAutomaticallyForwardRotationMethods

– (BOOL)shouldAutomaticallyForwardAppearanceMethods

这通常在自定义容器控制器中非常有用,如果想了解如何实现Custom Container View Controller可参考下面的实现:

https://github.com/gonefish/GQFlowController