2011-02-01 59 views
-1

我有一个自定义视图控制器层次结构。 子视图控制器仅作为子视图添加到自定义父视图控制器。父视图控制器还会在正确的时间调用子视图控制器的-[willRotateToInterfaceOrientation:duration:]-[didRotateFromInterfaceOrientation:]方法。如何在视图控制器层次结构中正确设置interfaceOrientation属性?

一切似乎正常工作,但由于某种原因,interfaceOrientation属性设置不正确,它始终是UIInterfaceOrientationPortrait

当我旋转到横向时,如何让子视图控制器在interfaceOrientation中具有正确的值?

回答

1

我不认为你可以,反正不使用公共API。此外,您试图这样做的事实表明您没有按照iOS应用程序的推荐设计。考虑View Controller Programming Guide

注意的忠告:如果你想要把一个视图层次划分为多个子区域,并分别管理各一台,使用通用控制器对象(从NSObject的下降自定义对象),而不是视图控制器对象来管理每个分区。然后使用单个视图控制器对象来管理通用控制器对象。

UIViewControllers旨在管理整个屏幕的内容价值。一旦你违背了这个假设,你将会与框架抗争,试图让你的观点像你期望的那样行事。

+0

iPad上的拆分视图控制器似乎违反了此规则(拆分视图的各个部分由完整的视图控制器管理)。如果你想实现你自己的自定义分割视图控制器呢?你不能? – user102008 2011-07-07 22:48:59

相关问题