16

私が達成したいこと: タイル (ビュー) を含むスクロール可能なレイアウト ( Recyclerviewwith GridlayoutManager) 内にビューが必要です。内の項目をドラッグ アンド ドロップするRecyclerViewと、アイコンの位置が調整され、他の要素と交換されます。ドラッグを開始すると、 の上のアイコンRecyclerViewがゴミ箱アイコンに変わり、ビューをこのアイコンにドラッグすると、この から削除されますRecyclerView

初期状態View5 のドラッグ開始View5 をゴミ箱アイコンにドラッグビュー 5 が削除され、他のビューが一緒に移動されました

この優れたチュートリアルを試してみましたが、可能なターゲットとして要素のみを使用するRecyclerviewため、 の外へのドラッグを処理する方法が見つかりませんでした。ItemTouchHelper.CallbackRecycler.ViewHolder

このメソッドinterpolateOutOfBoundsScroll()は、ビューが境界の外に移動した場合にフィードバックを返しますが、画面外の合計サイズのみを返しますが、座標は返しません。また、ビューを常に の外にドラッグしようとするとRecyclerview、 の境界線を通過するビューが切り取られますRecyclerview

どうすればこの効果を達成できるか考えている人はいますか?

4

2 に答える 2

4

あなたは境界線に縛られていRecyclerViewます。いくつかのオプションがあります:

  1. のレイアウトRecyclerViewの高さをmatch_parent上のビューの上に合わせて (それはToolbar?)、同じサイズのスティッキー ヘッダーを追加し、空の透明なレイアウトを作成します。そうすれば、それらをドラッグして、アイテムがそこに浮かんでいるのを見ることができます。

  2. 正当な右上のアイテムに近すぎる場所にあるゴミ箱アイコンにアイテムをドラッグする代わりに、ロングクリックしてアイテムを選択し (チェックマークや赤いマスクのような信号を適用します)、ゴミ箱を作りますクリックすると表示され、削除されます(複数のアイテムの削除が許可される場合があります)

于 2016-01-27T14:22:06.180 に答える