提问人:zattacks 提问时间:4/28/2022 更新时间:4/28/2022 访问量:174
有没有人能够覆盖/阻止在横向旋转 iPhone 应用程序的新 iPadOS 15 行为?
Has anyone been able to override/block the new iPadOS 15 behavior of rotating iPhone apps in landscape?
问:
理想情况下,我们会有原生的iPad支持,但这是一条路,目前还不可行。因此,现在我们必须使用运行 iPhone 应用程序的 iPad。 混合使用 UIKit 的 Swift 和 Objective-C,作为上下文。
我正在开发的应用程序有一个相机视图控制器,在 iPadOS 15 之前,它不会在纵向和横向之间旋转视野。但是,使用这种新的旋转行为,当 iPad 处于横向状态时,UI 会以纵向显示。在相机的情况下,视野现在翻转了 90º。拍摄的图像没有翻转,但侧向视野不好看。
到目前为止,我尝试/观察到的如下:
此新的旋转行为不受 UIViewController 的旋转方法控制。覆盖并且不会阻止此轮换。因此,这发生在设备级别,而不是视图控制器级别。
shouldAutorotate
supportedInterfaceOrientations
在设备级别,我只知道一种以编程方式更改方向的方法,即使用 UIDevice 属性上的私有 setter。显然,私有 API 是 App Store 的禁忌,利用它们的黑客攻击可能会在未来中断。也不是一个好的解决方案。
orientation
在这一点上,我已经走到了尽头。我已经搜索了 Google 和 StackOverflow,以了解更多关于这个新功能如何工作的信息,在技术层面上,但细节很少。如果有人对此有更多信息或经验,那就太好了。即使答案是“没有骰子”。谢谢!
答: 暂无答案
评论
UIImagePickerController
onDeviceOrientationChanged
traitCollectionDidChange