Iphone 当用户更改设备方向时,如何仅旋转导航栏而不旋转视图?

Iphone 当用户更改设备方向时,如何仅旋转导航栏而不旋转视图?,iphone,objective-c,view,rotation,viewcontroller,Iphone,Objective C,View,Rotation,Viewcontroller,所以,基本上我有一个ViewController,顶部有一个导航栏 例如,为了示例,我的ViewController的视图是数字8中的图片。当设备旋转时,导航栏也旋转并保持在顶部,但8与以前完全相同,使其看起来像无穷大符号时,我能做些什么?(由于设备已旋转,但图片未旋转,因此8现在正在“放下”) 谢谢 编辑: 好的,明白了 必须实施willRotateToInterfaceOrientation,在方向改变之前将视图旋转90度,还必须调整视图的边界您尝试过这样做吗 RootViewControl

所以,基本上我有一个ViewController,顶部有一个导航栏

例如,为了示例,我的ViewController的视图是数字8中的图片。当设备旋转时,导航栏也旋转并保持在顶部,但8与以前完全相同,使其看起来像无穷大符号时,我能做些什么?(由于设备已旋转,但图片未旋转,因此8现在正在“放下”)

谢谢

编辑: 好的,明白了


必须实施willRotateToInterfaceOrientation,在方向改变之前将视图旋转90度,还必须调整视图的边界

您尝试过这样做吗

RootViewController:导航控制器的alloc init。允许在此旋转设备(应自动旋转指针面方向-是)

但在childViewController中:您不希望允许更改方向。还实现了相同的方法,返回NO


我不确定这是否有效。但这只是一个建议。

您可以从查看UIViewController
willRotateToInterfaceOrientation:duration:


从这里,您可以在视图控制器旋转之前调用操作,例如以不同方式设置视图框

您不能让视图正常旋转,而是将图像旋转到相反的方向吗?我没有以编程方式分配导航栏,我只是从情节提要中拖动它。。