是:[self.window setRootViewController:top];
真的需要吗?我正在使用 ECSlidingViewController 并且无法让它与 iOS6 自动旋转一起使用。在 ECSlidingViewController 类中,这是它添加子视图的方式:
[self.view addSubview: _topViewController.view];
我如何启用自动旋转方法,完全卡住了!?非常感谢。
是:[self.window setRootViewController:top];
真的需要吗?我正在使用 ECSlidingViewController 并且无法让它与 iOS6 自动旋转一起使用。在 ECSlidingViewController 类中,这是它添加子视图的方式:
[self.view addSubview: _topViewController.view];
我如何启用自动旋转方法,完全卡住了!?非常感谢。
您要么需要设置窗口的根视图控制器,要么向其添加控制器的子视图。除非您尝试支持 iOS 3 或更早版本,否则您应该使用前者。所以简而言之,是的,[self.window setRootViewController:top];
是需要的。
要为子控制器启用自动旋转,您需要使用子视图控制器方法,如下所示:
[_topViewController willMoveToParentViewController:self];
[self addChildViewController:_topViewController];
[self.view addSubview: _topViewController.view];
[_topViewController didMoveToParentViewController:self];
您可能还需要覆盖-[shouldAutomaticallyForwardRotationMethods]
,但由于默认实现返回YES
您可能不需要。