2011-10-26 12 views
12

私はListViewのすべての行にViewPagerウィジェットを持っています。これにより、シェルフのようなUIが提供されるため、ユーザーはシェルフを垂直方向にスクロールしてスクロールし、シェルフのコンテンツ間を水平にスクロールすることができます。これは機能します。ListViewのViewPager - スクロール軸をロックする方法は?

しかし、シェルフのViewPagerをドラッグして水平方向にスクロールし、誤って上下を少しドラッグすると、ListViewがこのドラッグ操作をトラップし、垂直方向にスクロールして終了します私の水平抗力。この状態では、ドラッグ操作はViewPagerに「戻ってこない」、ListViewにはそれがあり、それだけです。もう一度ViewPagerに影響を与えるために別のドラッグ操作を開始する必要があります。だから私はリストビューは、これらの場合に優先順位があると思います。

どのようにこれを修正できますか?私はまったく反対を達成したい:リスト行の中のViewPagerが水平ドラッグに反応し始めると、そのアクションをトラップし、このドラッグがユーザの指の動きに関係なくリストビューに影響を与えなくなるはずである垂直にこれはできますか?

+7

回答が見つかりました:http://stackoverflow.com/questions/2646028/android-horizo​​ntalscrollview-within-scrollview-touch-handling –

+0

その場合、最もよいことは、この質問を重複して閉じることです質問が十分に近いと感じる場合)、または十分に異なる場合は、リンクを回答として送信し、それを「選択された回答」としてマークします。そのようにしても、それ以上の質問はまだ返信されていません:) –

+0

あなたは正しいです、この質問は答えられないと表示されて混乱している、私は適切な答えを追加しました。私はそれが十分に異なると思う、私は正確な重複としてマークしないだろう。 –

答えて

3

私はthisスレッドで解決策を見つけました。問題は、通常のScrollView内のHorizo​​ntalScrollViewのタッチイベントを適切に処理することですが、その問題の解決策もこの問題に適用されるようです。

関連する問題