[解決済み] UILongPressGestureRecognizerが押し下げ時に2回呼び出される
2022-03-14 06:36:05
質問
ユーザーが2秒間押されたことを検知しています。
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc]
initWithTarget:self
action:@selector(handleLongPress:)];
longPress.minimumPressDuration = 2.0;
[self addGestureRecognizer:longPress];
[longPress release];
長押しにはこのように対処しています。
-(void)handleLongPress:(UILongPressGestureRecognizer*)recognizer{
NSLog(@"double oo");
}
2秒以上押し続けると、"double oo"というテキストが2回出力されます。なぜでしょうか?どうすれば直せますか?
解決方法を教えてください。
UILongPressGestureRecognizerは連続したイベントを認識するものです。 つまり、開始以降のイベントをすべて捨てたり、必要な動きだけを見たりすることができます。 より クラスリファレンス :
長押しジェスチャーは連続的なものです。許容される指の数(numberOfTouchesRequired)が指定された期間(minimumPressDuration)押され、タッチが許容される移動範囲(allowableMovement)を超えて移動しない場合、ジェスチャーは開始(UIGestureRecognizerStateBegan)される。ジェスチャー認識器は、指が動くたびにChange状態に遷移し、いずれかの指が持ち上がると終了(UIGestureRecognizerStateEnded)します。
このように状態を追跡することができます
- (void)handleLongPress:(UILongPressGestureRecognizer*)sender {
if (sender.state == UIGestureRecognizerStateEnded) {
NSLog(@"UIGestureRecognizerStateEnded");
//Do Whatever You want on End of Gesture
}
else if (sender.state == UIGestureRecognizerStateBegan){
NSLog(@"UIGestureRecognizerStateBegan.");
//Do Whatever You want on Began of Gesture
}
}
関連
-
[解決済み】@try - Objective-Cのcatchブロック
-
[解決済み] iPhoneのシミュレータに.ipaファイルをインストールする方法は?
-
[解決済み] iPhoneのTableViewのCellの右側に小さな矢印を追加する
-
[解決済み] インスタンスからクラス名を取得する
-
[解決済み] 指定されたエンタイトルメント...プロファイルです。(0xE8008016)と表示されました。エラー iOS 4.2
-
[解決済み] 再署名 IPA (iPhone)
-
[解決済み] 空のUITableViewを処理する。フレンドリーなメッセージを表示する
-
[解決済み] CALayer setNeedsDisplayInRect:] の暗黙のアニメーションを無効にする。
-
[解決済み] 円形のカスタムUIViewの描き方 - iPhoneアプリ
-
[解決済み] iPhoneのデータ使用量のトラッキング/モニタリング
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】@try - Objective-Cのcatchブロック
-
[解決済み] Objective-CでENUMを定義して使用するにはどうすればよいですか?
-
[解決済み] .xibファイルと.storyboardの違いは何ですか?
-
[解決済み] NSDictionaryをNSDataに、またはNSDataをNSDictionaryに変換するにはどうすればよいですか?
-
[解決済み] UIViewControllerの上にclearColor UIViewControllerを表示する
-
[解決済み] UISearchDisplayController/UISearchBarでNSFetchedResultsController(CoreData)をフィルタリングする方法
-
[解決済み] iPhoneのSafariで<body>に適用したoverflow:hiddenは機能するのか?
-
[解決済み] モバイルアプリにおけるOAuthの秘密
-
[解決済み] UIImageViewのコーナー半径の設定がうまくいかない
-
[解決済み] iPhoneのデータ使用量のトラッキング/モニタリング