Library for creating Tinder-like swipe cards effect using RecyclerView
SwipeableCards
Features
Library provides three Helper classes for creating tinder-like swipe card effect with recycler view
- SwipeableTouchHelperCallback responsible for creating swipe effect and sending callbacks on card swiped
- ItemTouchHelper for animating layouts
- SwipeableLayoutManager used for ordrering views in recycler view
Download
Add to your project gradle
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Download via Gradle:
dependencies {
compile 'com.github.nihad92:SwipeableCards:{latestvesion}'
}
Example
First create SwipeableTouchHelperCallback
adapter = new OurRecyclerviewAdapter();
SwipeableTouchHelperCallback swipeableTouchHelperCallback =
new SwipeableTouchHelperCallback(new OnItemSwiped() {
//Called after swiping view, place to remove top item from your recyclerview adapter
@Override public void onItemSwiped() {
adapter.removeTopItem();
}
@Override public void onItemSwipedLeft() {
}
@Override public void onItemSwipedRight() {
}
});
Create ItemTouchHelper and attach to RecyclerView
NOTE: You have to use ItemTouchHelper from swipeable.com.layoutmanager.touchelper
ItemTouchHelper itemTouchHelper = new ItemTouchHelper(swipeableTouchHelperCallback);
itemTouchHelper.attachToRecyclerView(recyclerView);
Add Layout manager and adapter to recycler view
recyclerView.setLayoutManager(new SwipeableLayoutManager());
recyclerView.setAdapter(adapter = new ListAdapter());
Customization
Easly change angle of card rotation, deck scaling percentage, translate cards in deck, animation duration or visible cards in deck
swipeableLayoutManager
.setAngle(10)
.setAnimationDuratuion(500)
.setMaxShowCount(3)
.setScaleGap(0.1f)
.setTransYGap(0);