問題タブ [uigesturerecognizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
612 参照

iphone - UIGestureRecognizerはiPadだけでなくiPhoneにも登場しますか

(iPadではなく)iPhone内でクラスを使用したいのですがUIGestureRecognizer、Appleは近いうちにそれを発表する予定ですか?

0 投票する
5 に答える
35837 参照

iphone - Iphone SDK の同時ジェスチャ レコグナイザー

UISwipeGestureRecognizer(たとえば、UISwipeGestureRecognizerDirectionRightと)を使用して、2 つの異なるスワイプ ジェスチャをキャッチする必要がありUISwipeGestureRecognizerDirectionLeftます。addGestureRecognizerメソッドを使用して 2 つの異なる認識エンジンを追加すると、最後に追加された認識エンジンのみが機能します。実装する必要があることを読んUIGestureRecognizerDelegate

2つ以上の同じジェスチャーをキャッチする簡単な例を誰か助けてもらえますか? ありがとう!

0 投票する
15 に答える
16629 参照

cocoa-touch - iPadアプリの一般的なundo/redo UIPopoverControllerスキームのように、UIGestureRecognizerをUIBarButtonItemに追加するにはどうすればよいですか?

問題

私のiPadアプリでは、押し続けるイベントの後でのみ、ボタンバーアイテムにポップオーバーをアタッチできません。しかし、これは元に/やり直しの標準のようです。他のアプリはこれをどのように行いますか?

バックグラウンド

UIKit(iPad)アプリのツールバーに元に戻すボタン(UIBarButtonSystemItemUndo)があります。元に戻すボタンを押すと、元に戻すアクションが実行され、正しく実行されます。

ただし、iPadでの元に戻す/やり直しの「標準のUE規則」では、元に戻すを押すと元になりが実行されますが、ボタンを押し続けると、コントローラーが閉じられるまでユーザーが「元に戻す」または「やり直し」のいずれかを選択したポップオーバーコントローラーが表示されます。

ポップオーバーコントローラーを接続する通常の方法は、presentPopoverFromBarButtonItem:を使用することです。これは、簡単に構成できます。これを長押しした後にのみ表示するには、次のスニペットのように「長押し」ジェスチャイベントに応答するビューを設定する必要があります。

これにより、ビューを長押しした後、メソッドhandleLongPressOnUndoGesture:が呼び出され、このメソッド内で、元に戻す/やり直しのポップオーバーを構成して表示します。ここまでは順調ですね。

これに伴う問題は、アタッチするビューがないことです。self.undoButtonItemはUIButtonBarItemであり、ビューではありません。

可能な解決策

1)[理想]ボタンバーアイテムにジェスチャレコグナイザーを取り付けます。ビューにジェスチャレコグナイザーをアタッチすることは可能ですが、UIButtonBarItemはビューではありません。.customViewのプロパティはありますが、buttonbaritemが標準のシステムタイプ(この場合はそうです)の場合、そのプロパティはnilです。

2)別のビューを使用します。UIToolbarを使用することもできますが、そもそも可能であれば、奇妙なヒットテストが必要であり、万能のハックになるでしょう。私が考えることができる他の使用する代替ビューはありません。

3)customViewプロパティを使用します。UIBarButtonSystemItemUndoのような標準タイプにはcustomViewがありません(nilです)。customViewを設定すると、必要な標準コンテンツが消去されます。これは、可能であれば、UIBarButtonSystemItemUndoのすべての外観と関数を再実装することになります。

質問

この「ボタン」にジェスチャレコグナイザーをアタッチするにはどうすればよいですか?具体的には、iPadアプリに標準の長押しして表示をやり直すポップオーバーを実装するにはどうすればよいですか?

アイデア?特に誰かが実際にアプリでこれを動作させていて(私はあなたのことを考えています、オムニ)、共有したい場合は特にありがとうございます...

0 投票する
1 に答える
1881 参照

ipad - iPad。UIBarButtonItem には、UIToolbarTextButton タイプの文書化されていないビューがあります。は?

多くのUIGestureRecognizersのUIGestureRecognizerDelegateであるView ControllerがあるiPadアプリがあります。UIGestureRecognizerDelegate の次のメソッドを実装しました。

}

私のセットアップは、EAGLView の上に UIToolbar があるフルスクリーンの EAGLView です。ツールバーに UIBarButtonItem があります。ここでの考え方は、どこでもダブルタップすると、ツールバーの外観が切り替わるということです。他のすべてのジェスチャは EAGLView で実行する必要があります。

私の問題は、UIBarButtonItem ショー touch.view を直接タップすると、文書化されておらず、イントロスペクトできない UIView サブクラス UIToolbarTextButton になることです。

は?

誰かが回避策を提案できますか?

ありがとう、
ダグ

ありがとう、

ダグ

0 投票する
6 に答える
7049 参照

cocoa-touch - UIPanGestureRecognizer の開始点がオフになっています

UIPanGestureRecognizer が接続された UIView がありますが、ジェスチャは正常に機能していますが、開始点がパンが最初に開始された場所ではないことを除いて、通常は x 座標と y 座標の両方で 5 ~ 15 ピクセルずれています。残念ながら、分散はそうではありません。一貫しており、パン動作が発生する速度に関連しているようです。

タッチが正しく送信されていることを検証するために、サブビューに touchesBegan メソッドを追加しました。正しい開始点を受け取りますが、ジェスチャは開始フェーズで同じ点を提供しません。私のログのいくつかの例は以下のとおりです。'Line start point' は、ジェスチャ認識エンジンから受け取った最初のポイントです。

誰もこの問題を見たことがありますか?

まったく新しい UIGestureRecognizer を実装せずに問題を回避する方法についてのアイデアはありますか?

0 投票する
7 に答える
38297 参照

iphone - UIGestureRecognizer は UIWebView で動作しますか?

UIScrollView のサブビューである UIWebview で動作する UIGestureRecognizer を取得しようとしています。これは奇妙に聞こえますが、numberOfTouchesRequiredセットを 2 にするとセレクターが起動しますが、numberOfTouchesRequired1 に設定するとセレクターは起動しません。

これが私のコードです:

UIGestureRecognizer の Apple サンプルを使用し、ペン先に webview を挿入することで、これを確認しました。彼らのタップコードはどこでも機能しますが、webview の領域内です。

0 投票する
2 に答える
7003 参照

iphone - ビューに UITapGestureRecognizer を追加してから削除すると、ボタン イベントが短絡しているように見えます

以下のコードでは、単純な情報ボタンでユーザーの touchUpInside の結果として ImageView をポップアップしています。ビューには他のボタンがあります。

情報を消すために、コントローラ ビューに UITapGestureRecognizer を追加し、タップが検出されたときにビューを非表示にしました。

tapGestureRecognizer を削除しないと、毎回アクションが呼び出されます。

ジェスチャ アクションを削除しても、このジェスチャ レコグナイザが追加されると、botton は touchUpInside イベントを受け取りません。なんで?

私の MainViewController からのコード

0 投票する
2 に答える
9005 参照

iphone - UIScrollView 内のビューの UIgestureRecognizer

UIScrollView のサブビューである UIView で UIGestureRecognizer を動作させることができた人はいますか? 私のコールバックは決して呼び出されないようです。

簡単な例として、ページング スクロールビューを作成し、3 ページ目で UITapGestureRecognizer を使用してタップをリッスンします。しかし、私はそれを働かせることができません。

これが私がそれを行う方法です:

0 投票する
1 に答える
1139 参照

iphone - UIRotationGestureRecognizer の最小回転値

UIRotationGestureRecognizerに遷移するために必要な最小回転値を設定することは可能UIGestureRecognizerStateRecognizedですか? 私は複数のレコグナイザーを使用していUIRotationGestureRecognizerますが、私のUIPinchGestureRecognizer.

私がやりたいのは、回転が特定の範囲内にある場合にのみ回転を呼び出し、それ以外の場合はキャンセルしてピンチを呼び出すことです。

0 投票する
1 に答える
2536 参照

objective-c - iPadの写真アプリをピンチして拡張する方法

このサイトでこれまで質問されたことはないと思いますが、間違っているかもしれません。

iPad Photosアプリでその全体の効果を得る方法の基本を知っている人はいますか?基本的に、写真のスタックをつまむと、そのスタック内の写真を「覗き見」できます。これは、ピンチ内の2本の指の間の距離に基づいて拡大し、外側へのピンチジェスチャを完全に完了すると、スタック内の写真が開きます。新しいビュー。

私が何を意味するかを理解するには、このビデオを参照してください。iPad Photoアプリと同じ方法を使用するサードパーティ製アプリを少なくとも1つ知っているので、それが可能であることを知っています。UIPinchGestureRecognizerで何かをするだろうと思いますが、正確にどのように進めるかはわかりません。