【发布时间】:2018-01-07 06:21:47
【问题描述】:
我正在开发一个照片捕捉应用程序。
我的应用仅支持纵向模式,我必须旋转横向图像才能将它们旋转为纵向模式。例如,如果照片是在landscapeRight 中拍摄的,我想将照片向右旋转 90 度。
但是,如果用户设备处于“锁定屏幕方向”模式,如果用户尝试拍摄横向定位的照片,我无法使用 UIDevice.current.orientation 获得正确的设备方向值。由于“锁定屏幕方向”,它总是返回“纵向”值。
我想通过“此应用程序想要解锁您的屏幕方向”消息来请求用户解锁屏幕方向的权限。是否可以添加我的 info.plist 以添加解锁屏幕方向的权限请求?如果是,我必须在我的 info.plist 中添加哪个权限?
提前致谢。
【问题讨论】:
-
我遗漏了一些东西,也许是一个重要的细节。我有两个图像处理应用程序,都是所有方向。今年年初,我发现几乎所有小型开发人员图像应用程序都只能在纵向上工作。 (是的,这让我很开心。)我的意思是——这些应用程序都没有请求许可。我的看法是,作为一个项目属性,他们将事物设置为仅肖像。 (我也有一些这样的游戏 - 仅限肖像。)屏幕锁定无关紧要,对吧?那你为什么要征求许可呢?
-
@dfd 因为用户可能会在我的应用中以相机模式拍摄风景照片。从逻辑上讲,我的应用当然只能在纵向模式下工作,但是当用户将设备旋转到横向时,用户 感觉 相机正在拍摄横向(但相机仍处于纵向模式)。我的问题就在这一点上。我想在向用户展示之前自动旋转拍摄的照片。但如果设备处于锁定屏幕方向模式,我无法达到设备的方向模式(lanscapeRight 或 LandscapeLeft)。所以我希望用户应该解锁设备的方向锁。
标签: ios iphone swift screen-orientation