我有两个视图控制器,A和B。A只支持竖屏,而B可以支持横屏。我使用容器API显示B。
[self addChildViewController:child];
[self.view addSubview:child.view];
child.view.frame = self.view.bounds;
[child didMoveToParentViewController:self];
我已经实现了。
- (BOOL)shouldAutorotate
{
UIViewController *current = _presentingChild ? _child : self;
return [current shouldAutorotate];
}
- (NSUInteger)supportedInterfaceOrientations
{
UIViewController *current = _presentingChild ? _child : self;
return [current supportedInterfaceOrientations];
}
一切都像魔法一样顺利运行。如果设备在展示A时是横向的,而我展示B时旋转立即发生。
问题出现在我关闭B时。如果设备是横向的,则显示A也会是横向的(这不应该发生)。
您有什么建议来解决这个问题吗?我知道我可以使用模态控制器来解决问题。但是对于这种特定情况,我不想使用模态vc。