2012-05-08 11 views
6

私はしようとしていますUILongPressGestureRecognizerをページのUITextFieldの1つに追加しますが、UiTextFieldを長押しするとセレクタメソッドが呼び出されません。 UItextFieldに追加しましたが、TextFieldを長押ししてフィールド上に拡大鏡を表示すると、Selectorメソッドが呼び出されません。UITextFieldにUILongPressGestureRecognizerを追加するには?

[self.tfCustomerStreet addGestureRecognizer:LongPressgesture]; 

しかし、それは正常に動作し、ビューに追加すると、セレクタのメソッドが呼び出されます。 viewDidLoad

UILongPressGestureRecognizer *LongPressgesture = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(LongPressgesture:)]; 
    [LongPressgesture setMinimumPressDuration:2.0]; 

[[self view] addGestureRecognizer:LongPressgesture]; 

初期化コード。

// Long press gesture reconizer 
- (void)LongPressgesture:(UILongPressGestureRecognizer *)recognizer 
{ 
    if (recognizer.state == UIGestureRecognizerStateEnded) { 
     NSLog(@"Long press Ended ................."); 
    } 
    else { 
     NSLog(@"Long press detected ....................."); 
    }   
} 

教えてください。どうすればUITextFieldで動作させることができますか?

答えて

8

タブジェスチャーが保証され、この方法にYES戻って、このジェスチャーデリゲート機能

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 
{ 
    return YES; 
} 

を編集テキストフィールド開始...または単に実装するために呼び出されますので、あなたはそれが動作します[LongPressgesture setMinimumPressDuration:2.0]; ..を削除する場合同時認識を可能にする。

お楽しみください:)

+0

感謝マレク.. [LongPressgesture setMinimumPressDuration:2.0]の除去に取り組んでその開始。あなたの言及したコードを追加してもうまくいきません。問題が解決しました..ありがとう:) – Azhar

+0

あなたは大歓迎ですが、第2のsloutionのためにあなたは 'UIGestureRecognizerDelegate'を.hに追加しましたか? –

+1

また、 'LongPressgesture.delegate = self;'を設定する必要があります。 –

関連する問題