1

UITableViewをUIScrollViewに配置したときの状況を想像してみてください。テーブル ビューをタップして垂直方向の移動を開始すると、UITableViewがファーストレスポンダーになり、垂直方向にスクロールします。しかし、指を水平に動かすと、 UIScrollViewがファーストレスポンダーになり、水平にスクロールします。

同様の状況がありますが、UIScrollView の代わりに、(void)touchesMoved:イベントをインターセプトして移動する単純な UIView オブジェクトがあります (ちょっと自作の ScrollView)。

しかし、UIScrollViewが行うのと同じトリックをどのように行うことができます?

前もって感謝します!!!

4

2 に答える 2

0

ビューでオーバーライドcanBecomeFirstResponderして、適切なタイミングで適切な値を返すことができます。

于 2011-03-02T17:37:03.357 に答える
0

ビューで UIPanGestureRecodnizer をスローしようとしましたか。その後、問題のイベントを処理できる @selector を設定できるはずです。また、パンを使用すると、x 要素のみを変更し、y 要素をそのままにしておくことができます。さらに、ビューに追加されたパン要素を使用すると、ファーストレスポンダーについて心配する必要がなくなります。加速や減速がある場合、パン要素は多くの場合スワイプ要素として使用できます。それを超えて、 UISwipeGestureRecognizer 要素を左右に追加することもできると思いますが、ユーザーが十分に離れていないときに画面を元に戻したい場合、ユーザーが意味をスワイプした距離などの情報は得られないと思います右または左の場合、そのオプションはありません。また、スワイプは UIScrollView と同じ効果をもたらしませんが、少し余分なコーディングを行うと、UIPanGestureRecognizer は可能になります。追加のコーディングは、x 値の位置を監視し、ユーザーがビューを離したときにビューが右または左にスナップするように少しアニメーションを使用することです。それ以外の場合は、x を適切に設定すると、ビューは指に従う必要があります。

于 2012-04-13T14:00:31.220 に答える