3

嗨,我是堆栈溢出和 iOS 应用程序编程的新手。我已经学习了基本中级的 Objective C 编码,并且对实际的 iOS 应用程序做了一些零碎的工作,但还没有真正在 App Store 上发布过。

我有兴趣做的第一个我只是一个使用加速度计的基本应用程序。我想制作一个应用程序,在 iPhone 的屏幕上有一个尺子,你可以沿着一个平面物体移动它,最后它会给你它的长度。我已经阅读了有关加速度计的 iOS 文档,但我不知道如何应用它来给我一些东西的距离......

任何帮助,如通读链接、代码摘录或类似的开源应用程序,将不胜感激!

4

1 回答 1

13

你还记得学校的物理吗?牛顿运动定律?

速度=距离/时间

所以:

距离 = 速度 x 时间。

加速度是速度随时间的变化吗?你做剩下的...

不管怎样,废话少说,这里是Objective-C:

你需要遵守<UIAccelerometerDelegate>然后你可以:

    -(void)startMeasuringAcceleration{


        [[UIAccelerometer sharedAccelerometer] setUpdateInterval:0.125];
        [[UIAccelerometer sharedAccelerometer] setDelegate:self];

    }

    -(void)stopMeasuringAcceleration{

        [[UIAccelerometer sharedAccelerometer] setDelegate:nil];

    }

    //this is a delegate method
    - (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration{

        NSLog(@"%f, %f, %f, %f", acceleration.x, acceleration.y, acceleration.z, acceleration.timestamp);
}        
于 2013-03-28T20:37:46.563 回答