@Override protected void onSetup() { setItemAddAnimationsManager(new DefaultItemAddAnimationManager(this)); setItemRemoveAnimationManager(new SwipeDismissItemRemoveAnimationManager(this)); setItemChangeAnimationsManager(new DefaultItemChangeAnimationManager(this)); setItemMoveAnimationsManager(new DefaultItemMoveAnimationManager(this)); setRemoveDuration(150); setMoveDuration(150); }
@Override protected void onSetup() { setItemAddAnimationsManager(new DefaultItemAddAnimationManager(this)); setItemRemoveAnimationManager(new DefaultItemRemoveAnimationManager(this)); setItemChangeAnimationsManager(new DefaultItemChangeAnimationManager(this)); setItemMoveAnimationsManager(new DefaultItemMoveAnimationManager(this)); }
@Override public final void onRemoveFinished(RecyclerView.ViewHolder item) { onRemoveFinishedImpl(item); if (mListener != null) { mListener.onRemoveFinished(item); } }
@Override public boolean animateChange(RecyclerView.ViewHolder oldHolder, RecyclerView.ViewHolder newHolder, int fromX, int fromY, int toX, int toY) { if (oldHolder == newHolder && fromX == toX && fromY == toY) { // WORKAROUND: Skip animateChange() for the dropped item. Should be implemented better approach. dispatchChangeFinished(oldHolder, true); return false; } return super.animateChange(oldHolder, newHolder, fromX, fromY, toX, toY); } }
@Override public final void onChangeFinished(RecyclerView.ViewHolder item, boolean oldItem) { onChangeFinishedImpl(item, oldItem); if (mListener != null) { mListener.onChangeFinished(item); } }
@Override public final void onAddFinished(RecyclerView.ViewHolder item) { onAddFinishedImpl(item); if (mListener != null) { mListener.onAddFinished(item); } }
@Override public final void onMoveFinished(RecyclerView.ViewHolder item) { onMoveFinishedImpl(item); if (mListener != null) { mListener.onMoveFinished(item); } }
public boolean dispatchFinishedWhenDone() { if (!isRunning()) { dispatchAnimationsFinished(); return true; } else { return false; } }
@Override public void runPendingAnimations() { if (!hasPendingAnimations()) { return; } onSchedulePendingAnimations(); }
@Override protected void onSetup() { super.onSetup(); super.setSupportsChangeAnimations(false); }
@Override protected GeneralItemAnimator onCreateTestTargetItemAnimator() { return new RefactoredDefaultItemAnimator(); } }
@Override protected GeneralItemAnimator onCreateTestTargetItemAnimator() { return new SwipeDismissItemAnimator(); } }
/** * Schedule order and timing of pending animations. * Override this method to custom animation order. */ protected void onSchedulePendingAnimations() { schedulePendingAnimationsByDefaultRule(); }
@Override public void setDuration(long duration) { mItemAnimator.setMoveDuration(duration); }
@Override public final void onAddStarting(RecyclerView.ViewHolder item) { onAddStartingImpl(item); }
@Override public void run() { mAnimator.runPendingAnimations(); } });
@Override public void run() { result[0] = mAnimator.animateRemove(vh); } });
@Override public void run() { result[0] = mAnimator.animateMove(vh, fromX, fromY, toX, toY); } });
@Override public void run() { result[0] = mAnimator.animateAdd(vh); } });
@Override public void run() { result[0] = mAnimator.animateChange(oldHolder, newHolder, fromX, fromY, toX, toY); } });