我正在使用推送方法收集加速度計和陀螺儀數據(startDeviceMotionUpdatesToQueue:withHandler:and startGyroUpdatesToQueue: [NSOperationQueue mainQueue] 我比較這些原始數據與某些閾值,如果它滿足閾值,我確實增加了一個標籤計數器,我的問題是當我開始檢測,即讀取方法並將其與閾值進行比較時,計數器增加快速,我已經在(Simple iPhone motion detect)中讀到「如果條件會成爲每個單一議案兩次真」,所以如果這是我正在發生的事情,我該如何解決問題,我的代碼很簡單如果加速度計x,y,z和陀螺儀x,y,z的條件給了我一個非常快的結果,我認爲它更真實
checkData {
if (( acc_2 >= 0.03885) && (gyro_3 >= 0.0003) && (gyro_3 <= 0.00838))
{
i=i+1;
//then Label data
_Counter.text=[NSString stringWithFormat:@"%d",i];
}
else if ((acc_2>= 0.01103) && (gyro_3 >= 0.00851))
{
/
//update the counter
i=i+1;
_Counter.text=[NSString stringWithFormat:@"%d",i];
}
...... same other conditions
}
然後我打電話裏面startDeviceMotionUpdatesToQueue這個方法:withHandler:塊。
[self checkData];
我該怎麼辦才能解決這個問題,你能指導我嗎? }
我有兩個updateIntervalset爲1/30,而我需要頻繁讀取,但是這是什麼引起我的標籤,然後從0到6月18日,然後28我覺得標籤的更新是如此之高跳,這個問題中提到的筆記(關於if)讓我想知道,如果這是導致櫃檯這種跳躍的原因。 – Dina