【问题标题】:How to get the iPhone view's current orientation or the device's last orientation?如何获取 iPhone 视图的当前方向或设备的最后方向?
【发布时间】:2010-08-19 14:56:20
【问题描述】:

在我的应用中,当用户摇晃设备时会出现一张图片。横向和纵向模式有不同的图像。如果 iPhone 的方向是纵向或横向,则可以正常工作。但如果是UIDeviceOrientationFaceDownUIDeviceOrientationFaceUp,则图像应取决于上次使用的方向,因为视图仍会针​​对此方向显示。

如何获取设备的最后方向?

【问题讨论】:

    标签: iphone device-orientation


    【解决方案1】:

    我想通了!我必须检查状态栏的方向!

    [UIApplication sharedApplication].statusBarOrientation
    

    【讨论】:

    • 隐藏状态栏怎么办?
    【解决方案2】:

    在一个类的 shouldAutoRotate 方法中,它传入一个名为 interfaceOrientation 的参数。只要设备方向发生变化,就会调用此方法。您可以将其存储为变量,并在以后查看它以确定最后的方向。

     1 = standard portrait
     2 = upsidedown
     3 = button right landscape
     4 = button left landscape. 
    

    self.interfaceOrientation 的调用也会给你当前的设备方向。

    希望这至少能让你朝着正确的方向开始。

    【讨论】:

    • self.interfaceOrientation 只给了我 UIDeviceOrientationFaceDown (Up),所以它没有帮助。我将尝试找出当方向为 FaceUp 时是否会覆盖 shouldAutoRotate 方法的 interfaceOrientation。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2011-01-31
    • 1970-01-01
    • 2013-03-23
    • 1970-01-01
    • 2018-08-16
    • 2021-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多