内部监督办公室轮换的主要问题

时间:2012-12-18 00:18:45

标签: ios rotation categories landscape portrait

我已经被困在这个问题上超过2周了!在我的项目中,我有一个单一的ViewController(幻灯片)我想要启用横向和纵向。其余的所有控制器/视图(幻灯片)我只想启用纵向模式。

棘手的部分是,我所指的“ViewController”连接到NavigationControllers和TabBarControllers。请参阅下面的方案,其中我想要启用横向/纵向的ViewController命名为: ReferredViewController

TabBarController ----> NavigationController ----> FristViewController - (推送事件) - > ReferredViewController

到目前为止,我已尝试为NavigationControllers和TabBarControllers创建 CATEGORY 。但由于我的NavigationControllers和TabBarControllers放置在项目的最开始,这将为整个项目设置规则。我的ReferredViewController放置在项目“storyboard”的末尾或中间。我试图通过代码设置规则以及单个ReferredViewController,但没有任何成功。

到目前为止,我最好的方法是将FirstViewController和 ReferredViewController 之间的事件从“push”更改为“modal”。然后,ReferredViewController可以旋转纵向/横向,并且项目的其余部分以纵向锁定。但是,您可能知道所有导航都将丢失,用户将陷入单张幻灯片。

有一点我也想知道,是否可以在ModalViewController中显示NavigationControllers?我没有尝试/测试这种情况所有可能的方式,但对此事的确认将不胜感激。

如果您对上述计划有任何明智的提示或动作,请为我提供所有帮助,我对此无法解决这个问题感到非常沮丧! /问候

1 个答案:

答案 0 :(得分:1)

问题在于你正在做的事情没有被苹果设计所支持。标签栏roattion的问题是众所周知的,你在这里找到stackoverflow许多关于该主题的帖子 在苹果设计策略中,最顶层的控制器必须允许两个旋转,只有子控制器可以将其减少到一个方向。
如果你想要它的另一种方式,最顶级的支持肖像,和孩子们,你自己。
这些不被苹果推出的东西非常费时。
我处于这种情况,那次是旋转..()没被调用。我通过使用CGtransform自动旋转视图来最终解决它...,这是我在stackoverflow中获得的信息。

要解决此问题,请使用两个视图控制器,一个允许两个方向,一个只允许一个。为避免重复代码,您可以从继承的类中调用公共代码。