public class ViewsCoordinator<ID>
extends java.lang.Object
RecyclerView and ViewPager to start transition between them.
But when ViewPager is scrolled we may also need to scroll RecyclerView to reveal
corresponding item's view.
Method request(Object) should be called when particular item needs to be synced.
This method will trigger methods ViewsCoordinator.OnRequestViewListener.onRequestView(Object) of listeners
set by setFromListener and
setToListener methods.
When views were requested this class starts waiting for 'from' and 'to' views to be provided
with setFromView(Object, View) (or setFromPos(Object, ViewPosition)) and
setToView(Object, AnimatorView) methods. When both views are ready method
ViewsCoordinator.OnViewsReadyListener.onViewsReady(Object) will be triggered.| Modifier and Type | Class and Description |
|---|---|
static interface |
ViewsCoordinator.OnRequestViewListener<ID> |
static interface |
ViewsCoordinator.OnViewsReadyListener<ID> |
| Constructor and Description |
|---|
ViewsCoordinator() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
cleanupRequest() |
ViewPosition |
getFromPos() |
android.view.View |
getFromView() |
AnimatorView |
getToView() |
protected void |
onViewsReady(ID id)
Called when both 'from' and 'to' views are ready for given index.
|
void |
request(ID id) |
void |
setFromListener(ViewsCoordinator.OnRequestViewListener<ID> listener) |
void |
setFromPos(ID id,
ViewPosition fromPos) |
void |
setFromView(ID id,
android.view.View fromView) |
void |
setReadyListener(ViewsCoordinator.OnViewsReadyListener<ID> listener) |
void |
setToListener(ViewsCoordinator.OnRequestViewListener<ID> listener) |
void |
setToView(ID id,
AnimatorView toView) |
public void setFromListener(ViewsCoordinator.OnRequestViewListener<ID> listener)
public void setToListener(ViewsCoordinator.OnRequestViewListener<ID> listener)
public void setReadyListener(ViewsCoordinator.OnViewsReadyListener<ID> listener)
public void request(ID id)
public android.view.View getFromView()
public ViewPosition getFromPos()
public void setFromView(ID id, android.view.View fromView)
public void setFromPos(ID id, ViewPosition fromPos)
public AnimatorView getToView()
public void setToView(ID id, AnimatorView toView)
protected void cleanupRequest()
protected void onViewsReady(ID id)
getFromView(),
getFromPos(),
getToView()