for.... ループがあり、ループ中に UI がブロックされます。加速度計もブロックされていますか?
viewDidLoad に次のコードがあります
- (void)viewDidLoad{
[super viewDidLoad];
UIAccelerometer *accel = [UIAccelerometer sharedAccelerometer];
accel.delegate = self;
accel.updateInterval = 1.0f/60.0f;
}
そしてさらに下へ
- (void)accelerometer:(UIAccelerometer *)acel didAccelerate:(UIAcceleration *)acceleration {
acc=acceleration.x;
}
次に、ループを開始するボタンに接続された IBAction
- (IBAction)doSomething {
for (int n = 1; n<=100;n++) {
// do someting in the loop
NSLog(@"x: %g", acc);
}
}
加速度計の x 値をログに記録すると、ボタンが押されたときに最初の値のみが表示され、ループの実行中には更新されません。同じ最初の値が連続して繰り返されています。ループ中に加速度を記録する方法はありますか?