public class SwipeDismissRecyclerViewTouchListener
extends java.lang.Object
implements android.view.View.OnTouchListener
Modifier and Type | Class and Description |
---|---|
static interface |
SwipeDismissRecyclerViewTouchListener.DismissCallbacks
The callback interface used by
SwipeDismissRecyclerViewTouchListener to inform its client
about a successful dismissal of one or more list item positions. |
(package private) class |
SwipeDismissRecyclerViewTouchListener.PendingDismissData |
Modifier and Type | Field and Description |
---|---|
static int |
INVALID_POSITION |
private long |
mAnimationTime |
private SwipeDismissRecyclerViewTouchListener.DismissCallbacks |
mCallbacks |
private int |
mDismissAnimationRefCount |
private int |
mDownPosition |
private android.view.View |
mDownView |
private float |
mDownX |
private float |
mDownY |
private int |
mMaxFlingVelocity |
private int |
mMinFlingVelocity |
private boolean |
mPaused |
private java.util.List<SwipeDismissRecyclerViewTouchListener.PendingDismissData> |
mPendingDismisses |
private android.support.v7.widget.RecyclerView |
mRecyclerView |
private int |
mSlop |
private boolean |
mSwiping |
private android.view.VelocityTracker |
mVelocityTracker |
private int |
mViewWidth |
Constructor and Description |
---|
SwipeDismissRecyclerViewTouchListener(android.support.v7.widget.RecyclerView recyclerView,
SwipeDismissRecyclerViewTouchListener.DismissCallbacks callbacks)
Constructs a new swipe-to-dismiss touch listener for the given list view.
|
Modifier and Type | Method and Description |
---|---|
private void |
caseMotionActionCancel() |
private void |
caseMotionActionDown(android.view.MotionEvent motionEvent) |
private void |
caseMotionActionMove(android.view.MotionEvent motionEvent) |
private void |
caseMotionActionUp(android.view.MotionEvent motionEvent) |
android.support.v7.widget.RecyclerView.OnScrollListener |
makeScrollListener()
Returns an
AbsListView.OnScrollListener to be added to the ListView using AbsListView.setOnScrollListener(android.widget.AbsListView.OnScrollListener) . |
boolean |
onTouch(android.view.View view,
android.view.MotionEvent motionEvent) |
private void |
performDismiss(android.view.View dismissView,
int dismissPosition) |
void |
setEnabled(boolean enabled)
Enables or disables (pauses or resumes) watching for swipe-to-dismiss gestures.
|
public static final int INVALID_POSITION
private int mSlop
private int mMinFlingVelocity
private int mMaxFlingVelocity
private long mAnimationTime
private android.support.v7.widget.RecyclerView mRecyclerView
private SwipeDismissRecyclerViewTouchListener.DismissCallbacks mCallbacks
private int mViewWidth
private java.util.List<SwipeDismissRecyclerViewTouchListener.PendingDismissData> mPendingDismisses
private int mDismissAnimationRefCount
private float mDownX
private float mDownY
private boolean mSwiping
private android.view.VelocityTracker mVelocityTracker
private int mDownPosition
private android.view.View mDownView
private boolean mPaused
public SwipeDismissRecyclerViewTouchListener(android.support.v7.widget.RecyclerView recyclerView, SwipeDismissRecyclerViewTouchListener.DismissCallbacks callbacks)
recyclerView
- The list view whose items should be dismissable.callbacks
- The callback to trigger when the user has indicated that she would like to
dismiss one or more list items.public void setEnabled(boolean enabled)
enabled
- Whether or not to watch for gestures.public android.support.v7.widget.RecyclerView.OnScrollListener makeScrollListener()
AbsListView.OnScrollListener
to be added to the ListView
using AbsListView.setOnScrollListener(android.widget.AbsListView.OnScrollListener)
.
If a scroll listener is already assigned, the caller should still pass scroll changes through
to this listener. This will ensure that this SwipeDismissRecyclerViewTouchListener
is
paused during list view scrolling.SwipeDismissRecyclerViewTouchListener
public boolean onTouch(android.view.View view, android.view.MotionEvent motionEvent)
onTouch
in interface android.view.View.OnTouchListener
private void caseMotionActionMove(android.view.MotionEvent motionEvent)
private void caseMotionActionUp(android.view.MotionEvent motionEvent)
private void caseMotionActionCancel()
private void performDismiss(android.view.View dismissView, int dismissPosition)
private void caseMotionActionDown(android.view.MotionEvent motionEvent)