2011-06-24 22 views
0

シェイクイベントに反応することに問題があります。最初の問題は、私がルート上にシェイクビューを置くとうまくいきますが、他のビューに戻って戻ってきても全く動かないということです。第2の問題は、シェイクを使用してUITextFieldを持つビューに移動すると、UITextFieldが応答せず、キーボードも表示されないということです。身体が必要なら私のコードを提供することができます。この問題をひどく解決する必要があります。フリップビュー(IPhone)を使用している場合のシェイクイベントの問題

よろしくお願いいたします。

編集:

後は(私はシェイクイベントを使用しています)ルートビューのコードです:

enter -(BOOL) canBecomeFirstResponder{ 
return YES;} 

-(void) viewDidAppear:(BOOL)animated{ 

[super viewDidAppear:animated]; 
[self becomeFirstResponder];} 

-(void) viewDidDisappear:(BOOL)animated{ 
[self resignFirstResponder]; 

[super viewDidDisappear:animated];} 
-(void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event{ 

    if(event.subtype == UIEventSubtypeMotionShake) 
    { 

     iv.transform = CGAffineTransformMakeScale(1.0, 1.0); 
     txtviewFortune.text = nil; 

     [UIView beginAnimations:nil context:NULL]; 
     [UIView setAnimationDuration:1.0]; 


     [UIView setAnimationDelegate:self]; 
     [UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)]; 


     iv.transform = CGAffineTransformMakeScale(2.0, 2.0); 


     [UIView commitAnimations]; 


    } 
} 
+0

@Wasimはコードをメールで送信するか、コードを送信します。 –

+0

@Rahulは親切に私が現在投稿を編集しています。 – Wasim

+0

@Wasimできるだけコードを投稿していただくか、メールでお送りください。あなたが今投稿したコードはOKです。 –

答えて

1

だけviewWillDissappear方法ではないviewDidDissappearを使用しています。

+0

これは完全に 私はViewDidDisappearメソッドを使用して間違いをしていた 、代わりにViewWillDissappearを使用して、それはすべてが正常に動作します:) '私のために働いた - (無効)viewWillDisappear:(BOOL)アニメーション{ [自己resignFirstResponder]; [super viewWillDisappear:animated]; } ' もアプリのdeletage 'に次の行を追加することができます - (無効)applicationDidFinishLaunching:(のUIApplication *)アプリケーション{ \t application.applicationSupportsShakeToEdit = YES; ' ハッピーコーディング..! – Wasim

関連する問題