【问题标题】:Accelerometer data reversed in iphone 5?iPhone 5中的加速度计数据反转?
【发布时间】:2012-09-28 19:09:36
【问题描述】:

我正在 iOS 上创建一个使用加速度计的 cocos2d 游戏。我刚开始在 iphone 5 上进行测试,出于某种原因,它正在反转加速度计数据 - 基本上它的行为就像屏幕方向与实际情况翻转 180 度一样,向下倾斜会导致它向上发送东西,向左向右等.

它在运行 iOS 5 的 iphone 4 以及运行 iOS 5 的 ipad 和运行 iOS 6 的 ipad 上都可以正常工作。不确定是仅 iphone 5 还是所有运行 iOS 6 的 iphone 都有问题。

我在网上找不到任何关于此问题的提及,想知道是否有其他人遇到此问题以及您是否知道解决方案。

【问题讨论】:

标签: ios cocos2d-iphone ios6 iphone-5


【解决方案1】:

好的,我知道发生了什么。在 iOS 6 中,willRotateToInterfaceOrientation 方法已被弃用,不再被调用。我在那里有代码做两件事 - 检测手机正在加载的横向方向并相应地调整变量,并防止手机在游戏过程中翻转方向(这是一个倾斜移动游戏)。一切都表现得好像视图颠倒的原因是因为它是,并且手机的方向被锁定,并且没有调用我的代码来纠正这个问题。 Here's what Apple says about willRotateToInterfaceOrientation:

willRotateToInterfaceOrientation:duration:, willAnimateRotationToInterfaceOrientation:duration:, 和 didRotateFromInterfaceOrientation:不再调用任何方法 对自身进行全屏演示的视图控制器——对于 例如,通过调用 presentViewController:animated:completion:。你 应确保您的应用没有使用这些方法来管理 任何子视图的布局。相反,他们应该使用视图 控制器的 viewWillLayoutSubviews 方法并使用调整布局 视图的边界矩形。

现在我只需要弄清楚如何使用 willLayoutSubviews 方法来复制我的原始功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多