【问题标题】:Is there a way to force the iOS Simulator to start in landscape mode, when launching the simulator outside of XCode?在 XCode 之外启动模拟器时,有没有办法强制 iOS 模拟器以横向模式启动?
【发布时间】:2012-04-19 05:54:23
【问题描述】:

我知道在您的应用程序代码和 app.plist 文件中,您可以为应用程序设置方向设置,但我对这些信息不感兴趣。我很清楚它,并且我已经多次使用它来满足我的需求。

我希望 iOS 模拟器在运行我的应用程序之前“启动”时以 Left-Home-Landscape 模式启动。如果我的应用程序默认为纵向模式,iOS 模拟器应该以横向模式启动,然后我的应用程序应该自动旋转为纵向模式。

我知道我可以启动模拟器,然后从 iOS 模拟器硬件菜单手动旋转设备,但如果我能绕过它,我宁愿不必这样做。

他们的 iOS 模拟器设置是否隐藏在可以做到这一点的地方?我想这不太可能,因为当您启动 iOS 设备时,它总是首先以纵向模式启动。但是,我希望模拟器并非如此。

更多信息

仅供参考,这是针对 XCode 4.3.1 4.3.2 的,正如我在下面的 cmets 中提到的,假设我在启动模拟器时没有通过在 XCode 中调试项目来预加载项目。如果我只是启动模拟器,我希望它以横向方式启动。

【问题讨论】:

  • 我认为您可以在 info.plist 中添加一些内容,但我不记得是什么,所以这只是一个评论而不是一个答案。
  • 谢谢,但是是的,我知道这一点。像这样考虑它,如果我要启动模拟器应用程序,而不启动关联的进程,有没有办法配置 sim 以便它可以自动以横向启动,独立于 iOS 项目。如果有一个与模拟器关联的 info.plist 文件,我在哪里可以找到它?

标签: xcode xcode4 ios-simulator


【解决方案1】:

如果您找不到模拟器 plist,我注意到如果应用程序在模拟器中横向崩溃,下次运行它时,它会以横向启动。

因此,您可以为按钮或访问已释放对象的任何内容分配一些临时操作,从而导致崩溃。在模拟器中运行应用程序,将其旋转为横向,然后点击按钮使其崩溃。停止应用程序。下次运行时,它将是横向的。

非常难看,但它很快而且可能会起作用。


抱歉,我刚刚测试过,有几点需要注意:

1) 崩溃必须发生在 willAnimateRotationToInterfaceOrientation 中。也就是说,旋转到横向必须触发崩溃。这让这个杂物真的丑陋了。

2) 当我发布此答案时,我没有看到您添加的信息:如果您在崩溃后退出模拟器程序本身,它将无法工作。您必须在崩溃后停止您的应用并重新启动它。

【讨论】:

  • 哇,我会记住这一点的。我找到了模拟器应用程序,我将它隐藏在 xcode.app 文件中,它与 info.plist 相关联。但是,在 plist 中没有添加用于启动方向的属性。它可能是一个可选属性,但我还没有足够的勇气去尝试猜测它可能是什么以及它属于哪里。
  • 这里发生的只是模拟器继续运行。当模拟设备旋转时,“windowOrientation”确实会发生变化,但据我所知,它不会在启动时得到处理。提交错误。
猜你喜欢
  • 1970-01-01
  • 2014-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-07
  • 1970-01-01
  • 2012-02-14
  • 2015-06-14
相关资源
最近更新 更多