Swipe to Dismiss for RecyclerView with ItemTouchHelper

A hidden gem in Android Support Library, is the built in Swipe to Dismiss functionality.

Using the ItemTouchHelper class, we can add this to a RecyclerView.

  1. Create a SimpleCallback
ItemTouchHelper.SimpleCallback simpleCallback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT) {

        @Override
        public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
            return false;
        }

        @Override
        public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
            //Remove swiped item from list and notify the RecyclerView
        }
    };

The onSwiped() method is where you should remove the item. Don’t forget to notify your RecyclerView!
2. Finally, create an ItemTouchHelper instance and attach it to RecyclerView.

ItemTouchHelper itemTouchHelper = new ItemTouchHelper(simpleCallback);
itemTouchHelper.attachToRecyclerView(recyclerView);