Вы можете сделать это с помощью акселерометра.Акселерометр даст вам значение для оси XYZ при наклоне устройства.к этому добавьте свойство, которое является типом класса UIAccelerometer.
UIAccelerometer* theAccelerometer;
Теперь вы определяете частоту и делегат.Вы должны написать этот код, откуда хотите начать прием.
theAccelerometer = [UIAccelerometer sharedAccelerometer];
theAccelerometer.updateInterval = 1 / 50;
theAccelerometer.delegate = self;
Теперь вам нужно добавить метод делегирования
-(void) accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration{
myX = acceleration.x;
myY = acceleration.y;
myZ = acceleration.z;
}
Хорошо, теперь у вас часто обновляется значение с частотой50 [означает 20 мили секунд].Теперь, если вы хотите прекратить получать эти значения, и, очевидно, вы должны прекратить получать, если вы покинете это представление, и это будет выглядеть следующим образом:
theAccelerometer.delegate = nil
Снова вы можете снова начать получать данные акселерометра, назначая делегата себе
theAccelerometer.delegate = self;
если у вас возникнут дополнительные вопросы, вы можете пинговать мне behestee по скайпу