私はUIScrollViewスクロールを一方向にだけしようとしていて、まだすべてのUITouchイベントを取得しています。これが可能かどうかは完全にはわかりません。
UIResponderの「タッチ」イベントをオーバーライドしようとしましたUIScrollViewが、スクロールが開始されるとすぐに、タッチ メソッドが呼び出されなくなります。
次に、ドラッグ イベントの受信を開始するまでプロパティを false に設定しようとしUIScrollViewましたが、ドラッグ中にタッチ イベントの受信を開始する方法が見つからないようです。これは可能ですか?scrollEnabledUIScrollViewUIScrollView
私の次の試みは、スクロールビューに「パディング」を追加し、プロパティをいじって独自の「タッチイベント」を作成することでしたが、それは過剰な回数のcontentOffset呼び出しとクレイジーな処理を開始しました-応答の有効性に関するいくつかの問題もscrollViewDidScroll:.
hitTest:withEvent:、pointInside:withEvent:、touchesShouldBegin:withEvent:inContentView:およびで遊んでみましたが、touchesShouldCancelInContentView:成功しませんでした。
それ以来、私は他のいくつかのことを試しましたが、どれもうまくいきませんでした。また、私が見つけたものから、delaysContentTouchesfalse に設定するとスクロール応答が破壊されます。
いくつかの実際のオーバーライドされた touches メソッドが大好きです。スーパーを呼び出さないとUIScrollViewタッチを受けないメソッド。
スクロールが開始されるとすぐに「タッチ」イベントがドロップオフするため、UITouchのスクロールに影響を与えずに es (タップだけでなく、ドラッグ、開始、リリース、およびキャンセル)を取得する方法が必要です。これは可能ですか?UIScrollViewUIResponder