返回错误的设备方向

Lar*_*GvB 5 iphone orientation ios swift

我想我在 UIDevice.orientation 变量中发现了一个错误。

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(true)
    if UIDevice.current.orientation.isPortrait{
        print("Orientation is Portrait")
    }
    else{
        print("Orientation is Landscape")
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我将设备(Iphone 5)握在手中,一切正常,但如果它平放在桌子上,即使一切都以纵向显示并且设备本身没有旋转,我也会得到“方向是风景”。有什么可能的方法来反对这个吗?

// 编辑:此测试在按钮操作中也失败。

pic*_*ano 3

除了纵向和横向之外,还有更多方向。您正在检查肖像并假设其他一切都是风景。它不是。在这种情况下,实际方向可能是 \xe2\x80\x9cface up\xe2\x80\x9d。

\n