抱歉,我的问题中没有任何代码!我想实现一个程序,当加速度计 x 轴读数超过某个阈值时,我想启动陀螺仪更新。当陀螺仪被激活时,我也需要停止加速度计更新。我计划的方法是将加速度计数据带到全局变量,然后将其与 if 条件进行比较。如果它满足条件我需要发送信号来启动陀螺仪更新并停止加速更新?
我可以实现有关加速度和陀螺仪更新的代码,但问题是我不知道如何在全局变量的值超过阈值时启动陀螺仪数据 n 停止加速度数据?请帮我!
您可以使用 getter 和 setter 来更改变量。在 setter 中,您可以检查所需的任何条件。那么您就可以,例如,发布有关达到所需阈值的通知。
- (void) setNeededValue:(valueType)newValue;
{
neededValue = newValue;
if( neededValue > threshold )
{
[[NSNotificationCenter defaultCenter] postNotificationName: someConstStringAsNotificationName object: self];
}
}
要接收通知,请在您希望通过调用接收它的任何类中使用此代码
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notificationHandler) name:someConstStringAsNotificationName object:nil];
对我来说听起来不错,你只需要尝试一下。伪:
if ( globalVariable > thresholdValue ) {
stopAccelData();
startGyroData();
}