package cn.flightfeather.thirdapp.util.slideswaphelper; import android.graphics.Canvas; import android.support.v7.widget.RecyclerView; import android.support.v7.widget.helper.ItemTouchHelper; /** * Created by WANG on 18/3/14. */ public class PlusItemSlideCallback2 extends WItemTouchHelperPlus.Callback { private String type; private int actionWidth; public PlusItemSlideCallback2(String type, int actionWidth) { this.type = type; this.actionWidth = actionWidth; } @Override public boolean isItemViewSwipeEnabled() { return true; } @Override int getSlideViewWidth() { return 0; } @Override public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) { return makeMovementFlags(0, ItemTouchHelper.START); } @Override public String getItemSlideType() { return type; } @Override public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) { return false; } @Override public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) { } @Override public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) { if (dX < -actionWidth) { dX = -actionWidth; } viewHolder.itemView.scrollTo(-(int) dX, 0); } @Override public void clearView(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) { super.clearView(recyclerView, viewHolder); viewHolder.itemView.setScrollX(0); } }