我有一个类似的问题,视图没有自动旋转。我没有解决方案,但我有一个解决方法。在视图控制器的 willRotateToInterfaceOrientation 中,显式旋转视图:
switch (toInterfaceOrientation) {
case UIInterfaceOrientationLandscapeLeft:
self.view.transform = CGAffineTransformMakeRotation(M_PI * 0.5);
break;
case UIInterfaceOrientationLandscapeRight:
self.view.transform = CGAffineTransformMakeRotation(M_PI * -0.5);
break;
case UIInterfaceOrientationPortrait:
self.view.transform = CGAffineTransformMakeRotation(0);
break;
case UIInterfaceOrientationPortraitUpsideDown:
self.view.transform = CGAffineTransformMakeRotation(M_PI * 1);
break;
default:
break;
}
我称这是一种解决方法,因为我认为视图应该在没有显式 CGAffineTransformMakeRotation 调用的情况下自动旋转。就我而言,我正在为风景实例化一个不同的视图,我需要以这种方式旋转。我还有其他项目,其中单独的视图会自动旋转。我不知道为什么在这种情况下它不这样做。