我有一个非常奇怪的方向问题。我在导航控制器下有一系列视图控制器。其中之一可以采取任何方向。当我离开方向时,我必须使用 setOrientation。有趣的是,当转换发生到下一页时,就会发生旋转。这通常不是问题,除了单个案例——从 UIDeviceOrientationPortraitUpsideDown 到 normal 会导致我所有顶部安装的项目向上迁移大约八分之一的页面。
我认为我可以通过三种方式解决它:
- 以某种方式将 setOrientation 与我的 pushViewController 调用分开(因此新视图不需要翻转)
- 将我的项目设置为以更好的方式锚定在设备顶部(我检查过,它们似乎是)
- 重置 ViewDidLoad 方法中元素的 Y 尺寸,但这似乎是错误的。
这是我将新视图推送到堆栈代码中:
[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationPortrait];
ResultSelect_ViewController *resultSelect = [[ResultSelect_ViewController alloc] initWithNibName:@"ResultSelect" bundle:nil];
[self.navigationController pushViewController:resultSelect animated:YES];
还有其他人觉得奇怪的是模拟器不允许您测试倒置的肖像行为吗?