如何在方向改变时管理应用程序?

ios*_*ios 3 iphone uiinterfaceorientation

我有一个应用程序,我正在改变屏幕方向.但是当我更改第一个屏幕的方向并转到下一个屏幕时,更改不会持续存在.

随附图像以便更清楚地理解.

纵向模式下的第一个视图屏幕 横向模式下的第一个视图屏幕

横向模式下的第二个视图屏幕 纵向模式下的第二个视图屏幕


主要问题是当设备旋转时,第一个屏幕旋转但第二个屏幕没有以新方向启动.
只有在屏幕启动后我们改变方向时它才会旋转.

我该如何解决这个问题?

小智 6

问题是当你旋转设备时

  (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
Run Code Online (Sandbox Code Playgroud)

方法被调用但是当你进入下一个屏幕时,这个方法不会被调用.如果再次旋转设备,则会调用该方法.

因此,如果要将下一个屏幕方向更改为设备当前方向,请使用viewDidLoad方法或ViewWillApper()方法检查设备的当前方向.然后根据那个设置你当前的观点.