加速计Accelerate - (Obj-C)

  • 加速计作用:
    用于检测设备的受力情况(比如摇晃),检测加速度/重力感应,受力变化

  • 加速计原理:
    检测设备在X,Y,Z轴上的加速度(哪个方向有力的欧勇,哪个方向运动了)

  • 区别陀螺仪:
    陀螺仪检测旋转程度.加速计检测受力方向的变化

X,Y,Z轴方向是相对硬件自身的:

accelerate_1.png
accelerate_2.png

iOS 5中已经过期,主要在iOS 4以前使用,iOS 4以后使用CoreMotion.framework

使用方式很简单

示例代码:

#import "ViewController.h"

@interface ViewController () <UIAccelerometerDelegate>

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    // 1.创建加速计
    UIAccelerometer *accelerometer = [UIAccelerometer sharedAccelerometer];
    // 2.设置更新间隔
    accelerometer.updateInterval = 1.0f;
    // 3.获取数据  设置代理
    accelerometer.delegate = self;

}
//当获取加速度数据后调用
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration{
    
    NSLog(@"%f, %f, %f", acceleration.x, acceleration.y, acceleration.z);
}

@end

需要注意的是测试时需要使用真机,模拟器是没有加速计硬件的

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容