首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS9:替代UIDevice.currentDevice().setValue(.)强迫定向

iOS9:替代UIDevice.currentDevice().setValue(.)强迫定向
EN

Stack Overflow用户
提问于 2015-09-20 22:22:55
回答 3查看 6.6K关注 0票数 5

在我看来,这在iOS9中不再起作用了。这是事实上的方式,迫使方向的改变,基于我的研究。它现在冻结了我的SpriteKit游戏。

就我一个人,如果没有人知道另一个选择呢?

编辑:纵向和UpsideDown仍然工作。现在看来只有景观模式才会导致冻结。

编辑2:实际上我认为你可以去画像<-> UpsideDown和LandscapeLeft <-> LandscapeRight,但不能介于它们之间

EN

回答 3

Stack Overflow用户

发布于 2015-11-06 13:31:00

补充一下亚历克斯的答案:我的经验是,苹果只阻止iOS9 iPads的方向变化,而不需要全屏。因此,如果您告诉应用程序需要全屏,旋转应该可以:

但是,我不知道它是否会解决您的SpriteKit冻结问题,因为在我的经验中,iOS9还引入了许多SpriteKit错误。

票数 18
EN

Stack Overflow用户

发布于 2015-09-27 19:15:41

你是正确的。在iOS 9上设置设备方向是不可能的。我认为这是因为iPad上出现了新的SplitScreen模式。现在屏幕上一次可以有两个应用程序,如果一个应用程序决定允许哪个方向是“不公平的”。想象一下,如果两个应用程序强制不同的方向,会发生什么?我认为苹果只是一般地禁止它,即使他们可以限制iPad非全屏应用程序。

票数 3
EN

Stack Overflow用户

发布于 2016-01-08 06:50:25

如果您有两个或多个ViewControllers,并且希望每个ViewControllers都有不同的方向,我认为强制VC定向的最好方法是使用以下代码:

代码语言:javascript
复制
let value = UIInterfaceOrientation.LandscapeLeft.rawValue
// let value = UIInterfaceOrientation.Portrait.rawValue
UIDevice.currentDevice().setValue(value, forKey: "orientation")

它在iOS 9为我工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32684922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档