// 获得单例对象
UIAccelerometer *accelerometer = [UIAccelerometer sharedAccelerometer];
// 设置代理
accelerometer.delegate = self;
// 设置采样间隔
accelerometer.updateInterval = 1.0/30.0; // 1秒钟采样30次
// 实现代理方法
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
// acceleration中的x、y、z三个属性分别代表每个轴上的加速度
// 再根据加速度方向和大小做出相应地动作
acceleration.x x方向速度
acceleration.y y方向速度
acceleration.z z方向速度
// 1.累加速度
_ballVelocity.x += acceleration.x;
_ballVelocity.y -= acceleration.y;
// 2.计算小球的位置
self.ball.x += _ballVelocity.x;
self.ball.y += _ballVelocity.y;
// 3.边界处理
时间: 2024-10-24 20:27:18