I selected this Lib: CardStackView
How to use
Declare the layout
<com.yuyakaido.android.cardstackview.CardStackView
android:id="@+id/activity_main_card_stack"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="30dp"
android:clipChildren="false"
android:clipToPadding="false"/>
Now implement the Reverse Button.
final CardStackView cardStackView = (CardStackView) findViewById(R.id.activity_main_card_stack_view);
cardStackView.setAdapter(adapter);
View reverseButton = findViewById(R.id.activity_main_reverse_button);
reverseButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
cardStackView.reverse();
}
});
This is the easiest way to implement, however the above link has explanations of custom deployments.