iPad用アプリのUIAccelerometerに「興味深い」問題があります。
私のUIViewControllerには、加速度計をアクティブにするメソッドがあります。これはどのように見えるかです:
-(void)startAcc{
UIAccelerometer *gForce = [UIAccelerometer sharedAccelerometer];
gForce.delegate = self;
gForce.updateInterval = kUpdateInterval;
}
私のviewWillAppearでは、このメソッドを呼び出して加速度計をアクティブにしましたが、問題なく機能します。加速度を受け取り、それを使用して画面上のビューを移動します。
ユーザー入力時に、加速度計を使用する必要がある別のビュー(UIView)をロードします。したがって、次のコードを使用してUIViewControllerの加速度計を停止します。
[UIAccelerometer sharedAccelerometer].delegate = nil;
次に、UIViewをロードし、同じ方法で加速度計をアクティブにします。すべて正常に動作します。
私の問題は、UIViewを閉じて、UIViewControllerで加速度計を再開したいときに始まります。UIViewで停止し、UIViewからUIViewControllerのstartAccメソッドを呼び出します。メソッドは実行されますが、アクセラレーションを受け取りません:-(
同じ方法ですが、結果が異なります。
誰かが私がここで欠けているものに私を導くことができますか?
ありがとう