iphone - 有时不调用加速度计委托(delegate)方法

标签 iphone cocoa-touch accelerometer

我有一个使用加速度计的应用程序。有时,应用程序将在没有更新加速度计数据的情况下启动。重新启动应用程序,有时问题仍然存在,有时则不然。更奇怪的是,有时我可以尝试 10 次,一切都按预期进行。这是一个错误,还是我缺少的东西。调试,当加速度计没有更新时,这段代码永远不会被调用:

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration;

有什么想法吗?

最佳答案

我终于找到了解决办法。这是一个已知的错误。因此,我发现的解决方法是启动一个线程并让该线程检查加速度计委托(delegate)是否已被调用,如果有,则退出线程,如果没有,则再次设置委托(delegate),然后重新测试,直到加速度计委托(delegate)被调用被叫。我对此进行了彻底测试,它工作完美。我希望这个问题能够在 iPhone 操作系统的下一次更新中得到解决。

关于iphone - 有时不调用加速度计委托(delegate)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/249241/

相关文章:

iphone - 创建自定义 UIScrollView 滚动器

ios - 如何在 Sprite 套件游戏的触摸方法中编写 UIbuttons/IBactions

ios - 调整导航标题中的字体大小

ios - 如何以秒为单位确定 CMDeviceMotion 的年龄

android - Sony Smartwatch 2 加速计传感器在 FixedRate Listener 中出现问题

ios - Collection View 在滚动时更改选定的单元格

iOS10 文件系统 - 文件是否不再位于应用程序容器中?

iphone - 将 View 添加到 AQGridView ScrollView 顶部

iphone - iPad UIActionSheet 不显示

iphone - 如何将运动传感器数据从 Iphone 转换到 Android?