このページのシェイク「チュートリアル」を実装しようとしていますが、何かが足りないと思います。彼の加速度計関数を myAppViewController.m ファイルにコピーし、そこにいくつかの nslog を入れて、シミュレーターの「シェイク」関数を使用したときに関数に入るかどうかを確認しました。デバッグ コンソールには何も表示されません。
http://mithin.in/2009/07/28/detecting-a-shake-using-iphone-sdk
私が欠けているかもしれないものを誰かが説明できますか? または、チュートリアルを教えてください。
これは有望に見えますが、「UIView に入れる」方法がわかりません 。誰かが iPhone を振ったことを検出するにはどうすればよいですか?
編集 - 受け入れられた回答の提案により、ここに私の作業コードがあります。
3.0 iphone SDK でシェイク ジェスチャを検出するコードを次に示します。
-(BOOL)canBecomeFirstResponder {
return YES;
}
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[self becomeFirstResponder];
}
- (void)viewWillDisappear:(BOOL)animated {
[self resignFirstResponder];
[super viewWillDisappear:animated];
}
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
NSLog(@"{motion ended event ");
if (motion == UIEventSubtypeMotionShake) {
NSLog(@"{shaken state ");
}
else {
NSLog(@"{not shaken state ");
}
}