アプリケーションでシェイク ジェスチャを使用していますが、問題があります。
私のアプリケーションはマルチビュー アプリケーションで、ビュー 2 でシェイク ジェスチャを使用したいです。ビュー 2 でシェイク ジェスチャをアクティブにする場合、シェイク ジェスチャを使用するには、MainViewController.m と MyView2Controller.m に以下のコードを記述する必要があります。
次に、iPhoneを振ると、両方のビューにアラートが表示されますが、それは望ましくありません。アラートがビュー 2 にのみ表示されるようにしたいので、MainViewController.m またはビュー 1 のコードを非アクティブにすると、ビュー 2 では機能しなくなります!
どんな助けでも大歓迎です!
代替テキスト http://www.freezpic.com/pics/98f1465147344642e3870bb599eba689.jpg
これが私のコードです:
-(BOOL)canBecomeFirstResponder {
return YES;
}
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[self becomeFirstResponder];
}
-(void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event
{
if (event.subtype == UIEventSubtypeMotionShake)
{
UIAlertView *alet =[[UIAlertView alloc]initWithTitle:nil message:@"Shake shake shake" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alet show];
[alet release];
self.view.backgroundColor = [UIColor orangeColor];
}
}