我在iPad的应用程序中对UIAccelerometer有一个“有趣”的问题。
在我的UIViewController中,我有一个激活Accelerometer的方法。这就是它的样子:
-(void)startAcc{
UIAccelerometer *gForce = [UIAccelerometer sharedAccelerometer];
gForce.delegate = self;
gForce.updateInterval = kUpdateInterval;
}
在我的viewWillAppear中,我调用此方法来激活Accelerometer,它运行正常。我收到加速并用它在屏幕上移动视图。
在用户输入上,我然后加载需要使用加速度计的另一个视图(UIView)。所以我用这段代码在我的UIViewController中停止加速度计:
[UIAccelerometer sharedAccelerometer].delegate = nil;
然后我加载UIView并以相同的方式激活那里的加速度计。一切正常。
当我想要关闭UIView并再次启动UIViewController中的加速度计时,我的问题就开始了。我在UIView中停止它并从UIView中调用我的UIViewController中的startAcc方法。该方法执行,但我没有收到加速度: - (
方法相同,但结果不同。
有谁能引导我到这里我缺少的东西?
由于
答案 0 :(得分:0)
解决了它。通过[self resignFirstResponder];从子视图调用startAcc方法后,它可以工作。