2017-07-20 5 views
0

hereのように、「アイテムのスワップ位置」と「スワイプジェスチャーでアイテムを取り除く」のRecyclerViewを作成しました。アイテムに含まれているシークバー以外はすべて正常に動作します。私は、あるスポットをタップするだけで、ドラッグ可能なサムをタップして値を変更しないでシークバーの値を調整し、それを左右に動かすことで調整できます。そのような場合には、スワイプジェスチャが親RecyclerViewからアイテムを削除するということが起こります。RecyclerViewでスワイプジェスチャーでシークバー値を調整できません

スワイプジェスチャーが発生したときにシークバーの値を変更し、スクロールジェスチャーがシークバーの外側で実行されたときにのみそれを削除するにはどうしたらよいですか?

+0

が鳴ります。あなたはこれについてここで読むことができます:https://developer.android.com/training/gestures/viewgroup.html –

答えて

0

@Ben P .: onInterceptTouchEventを実装したLinearLayoutから拡張された独自のクラスを作成しましたが、スワイプジェスチャを中断できませんでした。私はRecyclerViewメソッドをインターセプトする必要があったので、このクラスはオーバーライドできるonInterceptTouchEventメソッドを提供していないと思います。私はRecyclerView(デフォルト編集)に表示するビューの2種類があり、唯一の編集タイプは、シークバーが含まれています。次のように

は代わりに、私は私の問題を解決しました。現在編集されている項目を削除することは絶対に許されないので、からオーバーライドしたgetMovementFlagsメソッドのViewHolderのタイプを分かりました。親は、タッチイベントを傍受されるよう

(私は2つのビュータイプの情報の一部を言及しなかったことを申し訳ありません。)

関連する問題