首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在景观模式下不能强迫方向旋转

在景观模式下不能强迫方向旋转
EN

Stack Overflow用户
提问于 2020-02-04 05:09:28
回答 1查看 1.1K关注 0票数 0

我的整个应用程序都是肖像模式。然而,一个屏幕需要能够旋转到景观(播放视频)。我能够启用所有的定向旋转,没有问题的@Jonathan Danek的回答

在我的AppDelegate中有:

代码语言:javascript
运行
复制
static var orientationLock = UIInterfaceOrientationMask.portrait

随后:

代码语言:javascript
运行
复制
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
    return AppDelegate.orientationLock
}

因此,为了支持所有方向的旋转,我在视频视图控制器中做了以下操作:

代码语言:javascript
运行
复制
AppDelegate.orientationLock = UIInterfaceOrientationMask.all
UINavigationController.attemptRotationToDeviceOrientation()

这是一个很好的..the问题,当我试图将它更改回纵向模式时。

我正在尝试这样做,因为视频视图控制器被解职:

代码语言:javascript
运行
复制
AppDelegate.orientationLock = UIInterfaceOrientationMask.portrait
UINavigationController.attemptRotationToDeviceOrientation()

如果视频视图控制器当前旋转为..but,则不会触发上述AppDelegate的supportedInterfaceOrientationsForWindow函数。有趣的是,它将触发功能,如果视频视图控制器目前旋转到肖像。

所以我想知道我怎样才能把我的一个视图控制器设置成所有的方向,然后把它改为仅仅是肖像呢?

EN

回答 1

Stack Overflow用户

发布于 2020-02-04 05:23:13

您是否尝试过在控制器中覆盖supportedInterfaceOrientations?也许能帮上忙。

示例:

代码语言:javascript
运行
复制
override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
    return UIInterfaceOrientationMask.all
}

返回视图控制器支持的所有接口方向。

Apple supportedInterfaceOrientations

Swift 5.1短版:

代码语言:javascript
运行
复制
override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
    .all
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60050963

复制
相关文章

相似问题

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