【问题标题】:Is there a way to start iOS app with the initial orientation dynamically?有没有办法以动态的初始方向启动 iOS 应用程序?
【发布时间】:2013-11-17 00:55:42
【问题描述】:

我知道我们可以在 iOS 应用中定义主要方向。但是我想不出一种方法来做我想做的事:如果设备处于横向模式,则以横向模式启动整个应用程序。如果没有,请以纵向开始。

目前,如果我在将设备旋转到横向模式后启动应用程序,它会以纵向模式打开而不是旋转。有没有办法以横向启动整个应用程序? (已经旋转的窗口)

【问题讨论】:

  • 这也是我感兴趣的问题。我有一个我正在编写的应用程序,我希望它是通用的。如果你在 iPhone 上启动它,我希望它是横向的,并隐藏一些东西。在 iPad 上,我希望它是纵向的,并显示所有内容。我希望这是动态的,并且愿意编写代码来支持它。我只是不确定钩子在哪里。

标签: ios iphone uiinterfaceorientation


【解决方案1】:

是的;只需表明您支持 info.plist 中的所有设备方向。您可以在 Xcode 5 的“常规”下的项目设置中的 Xcode 中看到这一点。

【讨论】:

  • 我已经将它设置为支持所有方向,但是它只有在以纵向模式启动应用程序后才能工作(旋转),正如 @juniperi 所说。正如你所写的“是”,我仍然希望有一些出路。 :|
  • 也许我不理解你;您的意思是用户看到应用以纵向打开然后旋转?如果你配置你的信息 plist 以及你的根视图控制器来支持所有方向,系统应该旋转到横向,正如 juniperi 指出的那样,在用户看到任何东西之前。 (您是否试图避免这种 invisible 旋转?如果是,为什么?)
【解决方案2】:

引用苹果UIViewController documentation

注意:在启动时,应用程序应始终将其界面设置为纵向。 在 application:didFinishLaunchingWithOptions: 方法返回后,应用程序使用上述视图控制器旋转机制来旋转在显示窗口之前查看到适当的方向。

【讨论】:

  • 我认为不再是这种情况了。在 iOS7/8 中,如果你去掉竖屏和倒置选项,应用会以横屏模式启动,你需要相应地选择启动图片。
猜你喜欢
  • 2014-08-24
  • 2018-02-24
  • 2012-08-12
  • 2020-02-22
  • 1970-01-01
  • 1970-01-01
  • 2015-07-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多