Objective c 自动布局不工作时的旋转
当我在IB中打开自动布局的情况下旋转设备时,不会调用下面的方法Objective c 自动布局不工作时的旋转,objective-c,ios7,autolayout,ios-autolayout,Objective C,Ios7,Autolayout,Ios Autolayout,当我在IB中打开自动布局的情况下旋转设备时,不会调用下面的方法 willRotateToInterfaceOrientation:duration: 首先,上述方法是否不适用于自动布局?在关闭Autolayout的情况下调用该方法。我正在尝试更改旋转视图的背景图像,不知道如何在启用自动布局约束的情况下实现这一点 我也试着使用procedure by,但我有一个庞大的视图层次结构,这些方法是从superview开始调用的,我在其他方法中有很多其他代码,比如。所以没用 didRotateFromI
willRotateToInterfaceOrientation:duration:
首先,上述方法是否不适用于自动布局?在关闭Autolayout的情况下调用该方法。我正在尝试更改旋转视图的背景图像,不知道如何在启用自动布局约束的情况下实现这一点
我也试着使用procedure by,但我有一个庞大的视图层次结构,这些方法是从superview开始调用的,我在其他方法中有很多其他代码,比如。所以没用
didRotateFromInterfaceOrientation
简单的回答是:
-willRotateToInterfaceOrientation:持续时间:
使用自动布局工作
答案很长:
假设您正在使用NIB,那么许多复合问题可能会出错;我编制了以下清单:
plist
中设置了全局方向-支持的接口方向
?请参阅@AndrewHershberger在将在根viewcontroller及其所有子viewcontroller上调用-willRotateToInterfaceOrientation:duration:,并与autolayout一起使用。如果希望在特定的viewcontroller上调用这些方法,则它必须是根viewcontroller的子viewcontroller
我花了一段时间才发现,从根到最后一个viewcontroller的层次结构在某个点上被破坏了。我不得不将其添加回子视图控制器。您一定做了一些不正确的事情,因为该方法的运行与“自动布局”是否启用无关。我总是使用自动布局,这种方法对我很有效。@rdelmar:谢谢。因此,当我旋转设备时,会自动调用这些方法。只有当我将xib更改为AUT布局时,他们才不会被呼叫。我在所有的xib文件上测试了这个,但是没有调用这些方法。那么,可能会出什么问题呢?因为它不需要自动布局就可以正常工作。我有什么遗漏吗?对不起,我不知道。这对我一直都很有效。我刚刚在一个新的应用程序上使用了一个xib定义的控制器,它被称为。根控制器是什么?
UITabBarController
,UINavigationController
或两者都没有?谢谢您的回答。您能否提供更多关于“您是否在IB中设置了自定义UIViewController”和“您是否正确处理了自动旋转”的详细信息?正如我在问题中所说,没有自动布局,自动旋转就可以完美工作。对于您的应用程序中出现错误的原因,没有一个答案(直到您发现它是错误的),但您的问题有一个答案:首先,上述方法是否适用于自动布局?是的,他们知道。我已经格式化了我的回复,并添加了指向您应该查看的可能位置的链接。