Created
December 24, 2017 18:55
-
-
Save Audhil/2b8256788b5ac1dc135c54ccd718f360 to your computer and use it in GitHub Desktop.
SwipeToDelete in RecyclerView - (Android)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private fun initSwipeToDelete() { | |
ItemTouchHelper(object : ItemTouchHelper.Callback() { | |
// enable the items to swipe to the left or right | |
override fun getMovementFlags(recyclerView: RecyclerView, | |
viewHolder: RecyclerView.ViewHolder): Int = | |
makeMovementFlags(0, ItemTouchHelper.LEFT or ItemTouchHelper.RIGHT) | |
override fun onMove(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder, | |
target: RecyclerView.ViewHolder): Boolean = false | |
// When an item is swiped, remove the item via the view model. The list item will be | |
// automatically removed in response, because the adapter is observing the live list. | |
override fun onSwiped(viewHolder: RecyclerView.ViewHolder?, direction: Int) { | |
(viewHolder as? CheeseViewHolder)?.cheese?.let { | |
viewModel.remove(it) | |
} | |
} | |
}).attachToRecyclerView(cheeseList) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment