package com.example.firstapp.util
|
|
import androidx.recyclerview.widget.ItemTouchHelper
|
import androidx.recyclerview.widget.RecyclerView
|
import com.example.firstapp.adapter.CategorySelectorAdapter
|
|
/**
|
* 拖拽回调
|
*/
|
class CategoryDragCallback(private val adapter: CategorySelectorAdapter) : ItemTouchHelper.Callback() {
|
|
override fun getMovementFlags(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder): Int {
|
val dragFlags = ItemTouchHelper.UP or ItemTouchHelper.DOWN
|
return makeMovementFlags(dragFlags, 0)
|
}
|
|
override fun onMove(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder, target: RecyclerView.ViewHolder): Boolean {
|
adapter.moveItem(viewHolder.adapterPosition, target.adapterPosition)
|
return true
|
}
|
|
override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: Int) {
|
// 不需要实现
|
}
|
}
|