从加速度计读数获得g力

时间:2014-04-23 21:05:43

标签: ios objective-c accelerometer

我想要一个标签,显示iPhone正在经历的当前g力量。我有代码从加速度计获取信息,但我不知道如何将数据发送到标签以显示当前的g力。 这是我的代码......

if (!self.manager) {
    self.manager = [CMMotionManager new];
}

if (self.manager.isAccelerometerActive) {
    [self.manager stopAccelerometerUpdates];
}

NSOperationQueue *queue = [NSOperationQueue new];

[self.manager setAccelerometerUpdateInterval:1.0 / 30.0]; // 30 Updates Per Second
[self.manager startAccelerometerUpdatesToQueue:queue withHandler:^(CMAccelerometerData *accelerometerData, NSError *error) {
NSLog(@"X: %f         Y: %f         Z: %f",accelerometerData.acceleration.x,accelerometerData.acceleration.y,accelerometerData.acceleration.z);
}];

由于

1 个答案:

答案 0 :(得分:1)

这很容易。您需要在Interface Builder中设置UILabel,您将看到如下属性:

    @property (strong, nonatomic) IBOutlet UILabel *myLabel;

在您的NSLog语句之后,您将要插入此代码:

    self.myLabel.text = [NSString stringWithFormat:@"x=%f, y=%f, z=%f", accelerometerData.acceleration.x,accelerometerData.acceleration.y,accelerometerData.acceleration.z];

当然你可能想让它看起来更漂亮,但这应该足以让你前进。