0

デバイス (iPhone/iPod Touch) が揺れたときを検出しようとしていますが、既に (viewController.m で) 行ったことは次のとおりです。

- (BOOL) canBecomeFirstResponder{
return YES;
}

.

- (void) motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event{
if (motion == UIEventSubtypeMotionShake){
NSLog(@"Motion detected");
}
}

そして、次の行を viewDidLoad に追加しました:

BOOL ret = [self becomeFirstResponder];

次に、アプリをビルドして実行し、デバイスを振ろうとしましたが、何も起こりませんでした!. ブレークポイントを使用して問題のトラブルシューティングを開始したところ、[self becomeFirstResponder] から返された「ret」値が「NO」であることが検出されました。そして、何が問題なのかわかりませんでした。助けはありますか?

Info : using Xcode 4, and iOS 4.3

前もって感謝します。

4

2 に答える 2

0

私は実際に解決策を見つけました。

[self becomeFirstResponder];

viewWillAppear:とviewDidLoadで試したのですが、両方のメソッドで機能しないため、viewDidAppear:でのみ実装する必要があります。

ありがとう

于 2011-03-18T17:55:26.633 に答える
0

Shaking-Motion Eventsを見たことがありますか?

于 2011-03-18T08:11:03.563 に答える