ビューでこの種類のタッチイベントに応答したい:ビューの外側にタッチしてドラッグします。 UIControlEventTouchDragEnter、UIControlEventTouchDragInside、UIGestureなどのiOS UIControlEventを使用しようとしましたが、これを直接行うことはできません。 最後に、独自の方法で実装します。UIViewのカスタムサブクラスを作成し、メソッド(UIView *)hitTest:(CGPoint)withEvent:(UIEvent *)イベントを上書きし、レスポンダチェーンまでタッチイベントを転送します。 touchesBegan、touchesMoved、touches親ビューのEndedメソッド、UITouchオブジェクトの位置を使用して、ビューの外にあるタッチを判断してドラッグします。 私はこの方法に満足していません。誰かがそれを解決するより効率的でエレガントな方法を教えてくれる人がいますか?あなたの時間と配慮に心から感謝します。ビューの外側にタッチし始めてドラッグするタッチイベントに応答する方法
-1
A
答えて
1
はあなたの最初のタッチダウンがビューの外に、それが関連付けられていないされている場合ので、「エレガント」あなたはこれより多くを行うことはできません
それを入力して表示し、ドラッグの外でタッチダウンを開始しますこの見解は決してありません。タッチの最初のヒットテストで関連付けられているビューがあれば、の場合は常にのように表示され、タッチイベントはジェスチャー全体で表示され、タッチイベントはそのビューにのみ送信されます。ヒットテストのデフォルトの定義は、最初のタッチが,であるビューがヒットテストビューであり、仮説によって、ではなく、ビューであることです。
関連する問題
- 1. Unityオブジェクトの外側をクリックして、上にドラッグし始めます
- 2. タッチイベントに応答しない
- 3. オブジェクトの下をタッチしてビューをドラッグし、それに応じて移動
- 4. 効率的に画像上に描画するタッチイベントに応答してフラグメントの内部に存在するビュー
- 5. ビューの外で開始したタッチを検出する
- 6. タッチに対するステージ応答
- 7. テキストフィールドの外側をタッチするとキーボードを消す方法は?
- 8. ビューの外でタッチイベントを取得する方法
- 9. タブレットのタッチ応答時間を測定する方法は?
- 10. マウスクリックとタッチの両方に応答するキャンバスを作成
- 11. ドラッグするために反応要素をクローンする方法
- 12. タッチに反応するビューを作成する方法(タップではない)
- 13. UIScrollViewとそのサブビューの両方がタッチに応答するようにする
- 14. Objective-C - 複数のビューを同じタッチイベントに応答させますか?
- 15. Android:onTouchListener - ユーザーがタッチを外に移動したときにタッチイベントをキャンセルする
- 16. UWPのすべてのビューに応答するグリッドビューの設計方法は?
- 17. 特定のビューをタッチ/ドラッグするときにビューページを無効にする
- 18. UIImageViewのUITextFieldサブビューがタッチイベントに応答していません
- 19. uiwebviewが応答しない/スーパーにタッチする
- 20. UITextFieldのタッチイベントにどのように応答できますか?
- 21. ビューを親の外にドラッグした後にビューをドラッグするにはどうすればよいですか?
- 22. 異なるタッチイベントごとに異なる応答
- 23. 子どもに応じてUIScrollViewを右にドラッグする方法
- 24. appwidgetがユーザーのタッチに応答していない
- 25. laravel 5:応答のあるビューを返す方法
- 26. タッチをドラッグして離した後にボールを起動する
- 27. 応答側のナビゲーションメニュー
- 28. adapter.notifyDataSetChanged()に応答する方法
- 29. 方法を避けるために "応答なし"
- 30. UIImageViewのサブクラスはタッチイベントに応答できますか?
あなたの答えをありがとう。 – user1651560