Created
September 29, 2015 23:41
-
-
Save AKiniyalocts/80b49478bd4130983e54 to your computer and use it in GitHub Desktop.
Swipe to delete/archive items in a RecyclerView
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
mRecycler.setHasFixedSize(true); | |
mRecycler.setLayoutManager(new LinearLayoutManager(mActivity)); | |
mRecycler.setAdapter(adapter); | |
mRecycler.getItemAnimator().setSupportsChangeAnimations(false); | |
Callback callback = new Callback() { | |
@Override | |
public int getMovementFlags(RecyclerView recyclerView, ViewHolder viewHolder) { | |
final int movementFlags; | |
if(viewHolder.getItemViewType() == UploadAdapter.VIEW_TYPE_ROW) { | |
movementFlags = makeMovementFlags(0, ItemTouchHelper.LEFT | ItemTouchHelper.RIGHT); | |
} else { | |
movementFlags = makeMovementFlags(0, 0); | |
} | |
return movementFlags; | |
} | |
@Override | |
public boolean onMove(RecyclerView recyclerView, ViewHolder viewHolder, ViewHolder viewHolder1) { | |
return false; | |
} | |
@Override | |
public void onSwiped(ViewHolder viewHolder, int i) { | |
int pos = viewHolder.getAdapterPosition(); | |
listener.onUploadItemSwiped(sortedItems.get(pos)); | |
} | |
}; | |
ItemTouchHelper itemTouchHelper = new ItemTouchHelper(callback); | |
itemTouchHelper.attachToRecyclerView(mRecycler); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment