0

是:[self.window setRootViewController:top];真的需要吗?我正在使用 ECSlidingViewController 并且无法让它与 iOS6 自动旋转一起使用。在 ECSlidingViewController 类中,这是它添加子视图的方式:

[self.view addSubview: _topViewController.view];

我如何启用自动旋转方法,完全卡住了!?非常感谢。

4

1 回答 1

2

您要么需要设置窗口的根视图控制器,要么向其添加控制器的子视图。除非您尝试支持 iOS 3 或更早版本,否则您应该使用前者。所以简而言之,是的,[self.window setRootViewController:top];是需要的。

要为子控制器启用自动旋转,您需要使用子视图控制器方法,如下所示:

[_topViewController willMoveToParentViewController:self];
[self addChildViewController:_topViewController];
[self.view addSubview: _topViewController.view];
[_topViewController didMoveToParentViewController:self];

您可能还需要覆盖-[shouldAutomaticallyForwardRotationMethods],但由于默认实现返回YES您可能不需要。

于 2013-01-06T16:18:28.000 回答