public
static
abstract
class
RecyclerView.SmoothScroller
extends Object
java.lang.Object | |
↳ | android.support.v7.widget.RecyclerView.SmoothScroller |
Known Direct Subclasses |
Base class for smooth scrolling. Handles basic tracking of the target view position and provides methods to trigger a programmatic scroll.
See also:
Nested classes | |
---|---|
class |
RecyclerView.SmoothScroller.Action
Holds information about a smooth scroll request by a |
Public constructors | |
---|---|
RecyclerView.SmoothScroller()
|
Public methods | |
---|---|
View
|
findViewByPosition(int position)
|
int
|
getChildCount()
|
int
|
getChildPosition(View view)
|
RecyclerView.LayoutManager
|
getLayoutManager()
|
int
|
getTargetPosition()
Returns the adapter position of the target item |
void
|
instantScrollToPosition(int position)
This method is deprecated.
Use |
boolean
|
isPendingInitialRun()
Returns true if SmoothScroller has been started but has not received the first animation callback yet. |
boolean
|
isRunning()
|
void
|
setTargetPosition(int targetPosition)
|
Protected methods | |
---|---|
void
|
normalize(PointF scrollVector)
Normalizes the vector. |
void
|
onChildAttachedToWindow(View child)
|
abstract
void
|
onSeekTargetStep(int dx, int dy, RecyclerView.State state, RecyclerView.SmoothScroller.Action action)
RecyclerView will call this method each time it scrolls until it can find the target position in the layout. |
abstract
void
|
onStart()
Called when smooth scroll is started. |
abstract
void
|
onStop()
Called when smooth scroller is stopped. |
abstract
void
|
onTargetFound(View targetView, RecyclerView.State state, RecyclerView.SmoothScroller.Action action)
Called when the target position is laid out. |
final
void
|
stop()
Stops running the SmoothScroller in each animation callback. |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
RecyclerView.SmoothScroller ()
View findViewByPosition (int position)
Parameters | |
---|---|
position |
int
|
Returns | |
---|---|
View |
See also:
RecyclerView.LayoutManager getLayoutManager ()
Returns | |
---|---|
RecyclerView.LayoutManager |
The LayoutManager to which this SmoothScroller is attached. Will return
null after the SmoothScroller is stopped.
|
int getTargetPosition ()
Returns the adapter position of the target item
Returns | |
---|---|
int |
Adapter position of the target item or
NO_POSITION if no target view is set.
|
void instantScrollToPosition (int position)
This method is deprecated.
Use jumpTo(int)
.
Parameters | |
---|---|
position |
int
|
See also:
boolean isPendingInitialRun ()
Returns true if SmoothScroller has been started but has not received the first animation callback yet.
Returns | |
---|---|
boolean |
True if this SmoothScroller is waiting to start |
boolean isRunning ()
Returns | |
---|---|
boolean |
True if SmoothScroller is currently active |
void setTargetPosition (int targetPosition)
Parameters | |
---|---|
targetPosition |
int
|
void normalize (PointF scrollVector)
Normalizes the vector.
Parameters | |
---|---|
scrollVector |
PointF :
The vector that points to the target scroll position
|
void onSeekTargetStep (int dx, int dy, RecyclerView.State state, RecyclerView.SmoothScroller.Action action)
RecyclerView will call this method each time it scrolls until it can find the target position in the layout.
SmoothScroller should check dx, dy and if scroll should be changed, update the
provided RecyclerView.SmoothScroller.Action
to define the next scroll.
Parameters | |
---|---|
dx |
int :
Last scroll amount horizontally |
dy |
int :
Last scroll amount verticaully |
state |
RecyclerView.State :
Transient state of RecyclerView |
action |
RecyclerView.SmoothScroller.Action :
If you want to trigger a new smooth scroll and cancel the previous one,
update this object.
|
void onStart ()
Called when smooth scroll is started. This might be a good time to do setup.
void onStop ()
Called when smooth scroller is stopped. This is a good place to cleanup your state etc.
See also:
void onTargetFound (View targetView, RecyclerView.State state, RecyclerView.SmoothScroller.Action action)
Called when the target position is laid out. This is the last callback SmoothScroller
will receive and it should update the provided RecyclerView.SmoothScroller.Action
to define the scroll
details towards the target view.
Parameters | |
---|---|
targetView |
View :
The view element which render the target position. |
state |
RecyclerView.State :
Transient state of RecyclerView |
action |
RecyclerView.SmoothScroller.Action :
Action instance that you should update to define final scroll action
towards the targetView
|
void stop ()
Stops running the SmoothScroller in each animation callback. Note that this does not
cancel any existing RecyclerView.SmoothScroller.Action
updated by
onTargetFound(android.view.View, RecyclerView.State, SmoothScroller.Action)
or
onSeekTargetStep(int, int, RecyclerView.State, SmoothScroller.Action)
.