Swift:如何在IOS 9+中切换状态栏方向?

时间:2018-01-13 07:47:42

标签: ios swift orientation statusbar uitraitcollection

我正在构建一个基于手势的游戏。 IOS的原生手势将通知中心和控制中心放在侧面滑动,因为它们会干扰游戏玩法,因此非常烦人。

在广泛搜索解决方案之后,我开始相信没有办法在应用级别禁用/阻止控制中心或通知中心。

可能有助于我找到的一个可能的解决方案是转动状态栏方向。我的应用以横向方向运行。如果我可以将通知/控制中心从顶部和底部滑动切换到左右滑动,我认为这可以解决我的问题。

然而,这似乎是可能的,但自IOS 9以来被贬低:https://developer.apple.com/documentation/uikit/uiapplication/1622939-setstatusbarorientation?language=objc

Apple建议改用UITraitCollection。但是,我无法弄清楚如何使用此更改状态栏的方向。示例代码将非常感谢!

1 个答案:

答案 0 :(得分:1)

从相同的文档中可以看出:

  

你不应该使用它来任意设置状态栏方向   方法

现在更是如此,因为如果您尝试使用此方法,则会收到此警告(并且实际上并不起作用):

  

'setStatusBarOrientation(_:animated :)'在iOS 9.0中已被弃用:   在iOS中,状态栏方向的显式设置更受限制   6.0及更高版本

这不是您应该尝试使用您的应用。隐藏状态栏或将其保留在顶部。