我在iPad模拟器上测试应用程序,我需要它在模拟器的位置启动我的应用程序,但每次运行应用程序时,模拟器都会旋转为纵向。
有没有办法阻止这种行为?
感谢。
= = = =
上次编辑:我现在发现如果我在shouldAutorotateToInterfaceOrientation上返回NO,问题就会停止。但这很疯狂,因为shouldAutorotateToInterfaceOrientation应该旋转界面以匹配iPad的位置,而不是相反。
答案 0 :(得分:4)
在模拟器中运行GHUnit测试应用程序时出现此问题。我通过将其添加到info.plist
文件来修复它:
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
如果使用Xcode的plist编辑器进行编辑,请确保已打开“显示原始键/值”选项。
答案 1 :(得分:2)
iPad支持多个启动图像(而不是iPhones singular default.png),因此可以在所有轮换中启动应用程序。 Specifics here
我猜你错过了新的(default-landscape.png等),这样当应用程序加载时它只能找到纵向加载屏幕,因此触发旋转(模拟器通过旋转到纵向来响应) )。如果shouldAutorotateToInterfaceOrientation
返回NO
,它仍然无法找到横向图片,但不允许轮换生效?
答案 2 :(得分:1)
一旦放入横向,只要您不退出模拟器,SIM就会保留在横向中。您可以重新运行您的应用,它将从横向开始(好吧,internally it is initially in portrait除外)。
答案 3 :(得分:1)
之前没有尝试过......但是如果你通过添加
来更改.plist文件
<key>UIInterfaceOrientation</key> <string>UIInterfaceOrientationPortrait</string>
我知道它适用于iPhone。
答案 4 :(得分:1)
为了确认,我同意你在迈克上面所说的一切,但你似乎可能从错误的角度来看待它。
iPad的一个关键点(根据苹果公司)是应用程序应该在任何方向都可以完全运行。如果您通过iPhone / iPod Touch充分利用额外的iPad用户界面阅读苹果专辑,那么它会在那里详细介绍。
如果您使用“cmd”+左/右箭头,您应该能够定位模拟器。这样,您就可以准确地模拟用户如果以错误的方向启动您的应用,您将体验到的内容。
我建议您撤消您所做的代码修改(shouldAutorotateToInterfaceOrientation - NO)并编写您的应用程序以便以任何方向显示。如果您必须只编写一个代码,那么我怀疑用户将被迫旋转设备以纠正问题。
我知道你很想测试你的风景应用程序,但我不知道任何方式iPad模拟器都可以被迫在Landscape中启动,而不需要你在上面提到你的工作,就像你已经建议的那样失败了。我怀疑你坚持使用“cmd”+“左/右”箭头。
答案 5 :(得分:1)
我想我已经拥有它了!
如果您关闭模拟器(例如 Cmd + Q ),则它始终以纵向模式启动。
但是,如果您通过按模拟器上的主页按钮关闭应用,则会在下次启动应用时记住最后一个方向。