Example usage for android.support.v4.view ViewPropertyAnimatorCompat setDuration

List of usage examples for android.support.v4.view ViewPropertyAnimatorCompat setDuration

Introduction

In this page you can find the example usage for android.support.v4.view ViewPropertyAnimatorCompat setDuration.

Prototype

public ViewPropertyAnimatorCompat setDuration(long j) 

Source Link

Usage

From source file:jp.wasabeef.recyclerview.animators.AnimateChange.java

public void animateChange(final RecyclerView.ViewHolder oldHolder, final RecyclerView.ViewHolder newHolder,
        int fromX, int fromY, int toX, int toY) {
    final View view = oldHolder.itemView;
    final View newView = newHolder.itemView;
    long oldAnimDuration = (long) (0.5f * mDispatcher.getChangeDuration());
    long newAnimDuration = mDispatcher.getChangeDuration();

    if (view != null) {
        final ViewPropertyAnimatorCompat oldViewAnim = ViewCompat.animate(view);
        oldViewAnim.translationX(toX - fromX);
        oldViewAnim.translationY(toY - fromY);

        oldViewAnim.setDuration(oldAnimDuration);
        oldViewAnim.alpha(0).setListener(new ViewPropertyAnimatorListener() {
            @Override// w  w  w. ja v a2 s.  com
            public void onAnimationStart(View view) {
                mDispatcher.dispatchChangeStarting(oldHolder, true);
            }

            @Override
            public void onAnimationEnd(View view) {
                oldViewAnim.setListener(null);
                ViewCompat.setAlpha(view, 1);
                ViewCompat.setTranslationX(view, 0);
                ViewCompat.setTranslationY(view, 0);
                mDispatcher.dispatchChangeFinished(oldHolder, true);
            }

            @Override
            public void onAnimationCancel(View view) {
                ViewHelper.clear(view);
            }
        }).start();
    }

    if (newView != null) {
        final ViewPropertyAnimatorCompat newViewAnimation = ViewCompat.animate(newView);
        newViewAnimation.translationX(0).translationY(0);

        newViewAnimation.setDuration(newAnimDuration);
        newViewAnimation.alpha(1).setListener(new ViewPropertyAnimatorListener() {
            @Override
            public void onAnimationStart(View view) {
                mDispatcher.dispatchChangeStarting(newHolder, false);
            }

            @Override
            public void onAnimationEnd(View view) {
                newViewAnimation.setListener(null);
                ViewCompat.setAlpha(newView, 1);
                ViewCompat.setTranslationX(newView, 0);
                ViewCompat.setTranslationY(newView, 0);
                mDispatcher.dispatchChangeFinished(newHolder, false);
            }

            @Override
            public void onAnimationCancel(View view) {
                ViewHelper.clear(view);
            }
        }).start();
    }
}

From source file:jp.wasabeef.recyclerview.animators.change.TinyScaleAnimate.java

public void animateChange(final RecyclerView.ViewHolder oldHolder, final RecyclerView.ViewHolder newHolder,
        int fromX, int fromY, int toX, int toY) {
    final long duration = (long) (0.5f * mDispatcher.getChangeDuration());

    if (oldHolder.itemView != null) {
        final ViewPropertyAnimatorCompat oldViewAnim = ViewCompat.animate(oldHolder.itemView);
        oldViewAnim.translationX(toX - fromX);
        oldViewAnim.translationY(toY - fromY);

        oldViewAnim.setDuration(duration);
        oldViewAnim.scaleX(SCALE_VALUE).scaleY(SCALE_VALUE);
        oldViewAnim.setListener(new ViewPropertyAnimatorListener() {
            @Override//from w  w w  .ja v  a 2  s  .  co m
            public void onAnimationStart(View view) {
                mDispatcher.dispatchChangeStarting(oldHolder, true);
            }

            @Override
            public void onAnimationEnd(View view) {
                oldViewAnim.setListener(null);
                ViewCompat.setAlpha(view, 1);
                ViewCompat.setTranslationX(view, 0);
                ViewCompat.setTranslationY(view, 0);
                mDispatcher.dispatchChangeFinished(oldHolder, true);

                if (newHolder.itemView != null) {
                    ViewCompat.setScaleX(newHolder.itemView, SCALE_VALUE);
                    ViewCompat.setScaleY(newHolder.itemView, SCALE_VALUE);
                    ViewCompat.setAlpha(newHolder.itemView, 1.f);
                    final ViewPropertyAnimatorCompat newViewAnimation = ViewCompat.animate(newHolder.itemView);
                    newViewAnimation.translationX(0).translationY(0);
                    newViewAnimation.scaleX(1.f).scaleY(1.f);
                    newViewAnimation.setDuration(duration);
                    newViewAnimation.setListener(new ViewPropertyAnimatorListener() {
                        @Override
                        public void onAnimationStart(View view) {
                            mDispatcher.dispatchChangeStarting(newHolder, false);
                        }

                        @Override
                        public void onAnimationEnd(View view) {
                            newViewAnimation.setListener(null);
                            ViewCompat.setAlpha(view, 1);
                            ViewCompat.setTranslationX(view, 0);
                            ViewCompat.setTranslationY(view, 0);
                            mDispatcher.dispatchChangeFinished(newHolder, false);
                        }

                        @Override
                        public void onAnimationCancel(View view) {
                            ViewHelper.clear(view);
                        }
                    }).start();
                }
            }

            @Override
            public void onAnimationCancel(View view) {
                ViewHelper.clear(view);
            }
        }).start();
    }

}

From source file:android.support.v7.widget.AbsActionBarView.java

public ViewPropertyAnimatorCompat setupAnimatorToVisibility(int visibility, long duration) {
    if (mVisibilityAnim != null) {
        mVisibilityAnim.cancel();// w ww.  ja va  2s  .c  om
    }

    if (visibility == VISIBLE) {
        if (getVisibility() != VISIBLE) {
            ViewCompat.setAlpha(this, 0f);
        }
        ViewPropertyAnimatorCompat anim = ViewCompat.animate(this).alpha(1f);
        anim.setDuration(duration);
        anim.setListener(mVisAnimListener.withFinalVisibility(anim, visibility));
        return anim;
    } else {
        ViewPropertyAnimatorCompat anim = ViewCompat.animate(this).alpha(0f);
        anim.setDuration(duration);
        anim.setListener(mVisAnimListener.withFinalVisibility(anim, visibility));
        return anim;
    }
}

From source file:android.support.v7.internal.widget.AbsActionBarView.java

public void animateToVisibility(int visibility) {
    if (mVisibilityAnim != null) {
        mVisibilityAnim.cancel();/*  w w w  . j ava2  s. c  o m*/
    }
    if (visibility == VISIBLE) {
        if (getVisibility() != VISIBLE) {
            ViewCompat.setAlpha(this, 0f);
            if (mSplitView != null && mMenuView != null) {
                ViewCompat.setAlpha(mMenuView, 0f);
            }
        }
        ViewPropertyAnimatorCompat anim = ViewCompat.animate(this).alpha(1f);
        anim.setDuration(FADE_DURATION);
        anim.setInterpolator(sAlphaInterpolator);
        if (mSplitView != null && mMenuView != null) {
            ViewPropertyAnimatorCompatSet set = new ViewPropertyAnimatorCompatSet();
            ViewPropertyAnimatorCompat splitAnim = ViewCompat.animate(mMenuView).alpha(1f);
            splitAnim.setDuration(FADE_DURATION);
            set.setListener(mVisAnimListener.withFinalVisibility(anim, visibility));
            set.play(anim).play(splitAnim);
            set.start();
        } else {
            anim.setListener(mVisAnimListener.withFinalVisibility(anim, visibility));
            anim.start();
        }
    } else {
        ViewPropertyAnimatorCompat anim = ViewCompat.animate(this).alpha(0f);
        anim.setDuration(FADE_DURATION);
        anim.setInterpolator(sAlphaInterpolator);
        if (mSplitView != null && mMenuView != null) {
            ViewPropertyAnimatorCompatSet set = new ViewPropertyAnimatorCompatSet();
            ViewPropertyAnimatorCompat splitAnim = ViewCompat.animate(mMenuView).alpha(0f);
            splitAnim.setDuration(FADE_DURATION);
            set.setListener(mVisAnimListener.withFinalVisibility(anim, visibility));
            set.play(anim).play(splitAnim);
            set.start();
        } else {
            anim.setListener(mVisAnimListener.withFinalVisibility(anim, visibility));
            anim.start();
        }
    }
}

From source file:io.apptik.multiview.animators.FlexiItemAnimator.java

@Override
protected void animateAddImpl(final RecyclerView.ViewHolder holder) {
    if (vpaAdd == null) {
        resetView(holder.itemView);//from w w w  . ja va  2 s  .  c  o m
        dispatchAddFinished(holder);
        dispatchFinishedWhenDone();
        return;
    }
    mAddAnimations.add(holder);

    Runnable beforeAction = vpaAdd.getBeforeAction(holder);
    if (beforeAction != null) {
        beforeAction.run();
    }
    final ViewPropertyAnimatorCompat animation = vpaAdd.getAnim(holder);
    if (ipAdd != null) {
        animation.setInterpolator(ipAdd);
    }
    animation.setDuration(getAddDuration()).setListener(new VoidVpaListener() {
        @Override
        public void onAnimationStart(View view) {
            Log.v("start add anim: " + view);
            dispatchAddStarting(holder);
        }

        @Override
        public void onAnimationCancel(View view) {
            Log.v("cancel add anim: " + view);
            resetView(view);
        }

        @Override
        public void onAnimationEnd(View view) {
            Log.v("end add anim: " + view);
            animation.setListener(null);
            resetView(view);
            dispatchAddFinished(holder);
            mAddAnimations.remove(holder);
            dispatchFinishedWhenDone();
        }
    }).start();
}

From source file:io.apptik.multiview.animators.FlexiItemAnimator.java

protected void animateRemoveImpl(final RecyclerView.ViewHolder holder) {
    if (vpaRemove == null) {
        dispatchRemoveFinished(holder);/*ww  w  . j  a va  2  s. c  o m*/
        dispatchFinishedWhenDone();
        return;
    }
    Runnable beforeAction = vpaRemove.getBeforeAction(holder);
    if (beforeAction != null) {
        beforeAction.run();
    }
    final ViewPropertyAnimatorCompat animation = vpaRemove.getAnim(holder);
    if (ipRemove != null) {
        animation.setInterpolator(ipRemove);
    }
    animation.setDuration(getRemoveDuration()).setListener(new VoidVpaListener() {
        @Override
        public void onAnimationStart(View view) {
            Log.v("start remove anim: " + view);
            dispatchRemoveStarting(holder);
        }

        @Override
        public void onAnimationCancel(View view) {
            Log.v("cancel remove anim: " + view);
            resetView(view);
        }

        @Override
        public void onAnimationEnd(View view) {
            Log.v("end remove anim: " + view);
            animation.setListener(null);
            resetView(view);
            dispatchRemoveFinished(holder);
            mRemoveAnimations.remove(holder);
            dispatchFinishedWhenDone();
        }
    }).start();
    mRemoveAnimations.add(holder);
}

From source file:io.apptik.multiview.animators.FlexiItemAnimator.java

@Override
protected void animateMoveImpl(final RecyclerView.ViewHolder holder, final MoveInfo moveInfo) {
    if (vpaMove == null) {
        dispatchMoveFinished(holder);//from  w w  w .j a  va 2  s. c om
        dispatchFinishedWhenDone();
        return;
    }
    final int deltaX = moveInfo.toX - moveInfo.fromX;
    final int deltaY = moveInfo.toY - moveInfo.fromY;

    mMoveAnimations.add(holder);
    Runnable beforeAction = vpaMove.getBeforeAction(holder, moveInfo);
    if (beforeAction != null) {
        beforeAction.run();
    }
    final ViewPropertyAnimatorCompat animation = vpaMove.getAnim(holder, moveInfo);
    if (ipMove != null) {
        animation.setInterpolator(ipMove);
    }
    animation.setDuration(getMoveDuration()).setListener(new VoidVpaListener() {
        @Override
        public void onAnimationStart(View view) {
            Log.v("start move anim: " + view);
            dispatchMoveStarting(holder);
        }

        @Override
        public void onAnimationCancel(View view) {
            Log.v("cancel move anim: " + view);
            resetView(view);
        }

        @Override
        public void onAnimationEnd(View view) {
            Log.v("end move anim: " + view);
            animation.setListener(null);
            resetView(view);
            dispatchMoveFinished(holder);
            mMoveAnimations.remove(holder);
            dispatchFinishedWhenDone();
        }
    }).start();
}

From source file:vc908.stickerfactory.ui.advancedrecyclerview.swipeable.ItemSlidingAnimator.java

private boolean animateSlideInternal(final RecyclerView.ViewHolder holder, int translationX, long duration,
        Interpolator interpolator) {/* w  w  w .j a v  a2 s .c om*/
    if (!(holder instanceof SwipeableItemViewHolder)) {
        return false;
    }

    final View containerView = ((SwipeableItemViewHolder) holder).getSwipeableContainerView();

    final int prevTranslationX = (int) (ViewCompat.getTranslationX(containerView) + 0.5f);

    endAnimation(holder);

    final int curTranslationX = (int) (ViewCompat.getTranslationX(containerView) + 0.5f);
    final int toX = translationX;

    if (curTranslationX == toX) {
        return false;
    }

    if (duration == 0 || Math.abs(toX - prevTranslationX) <= mImmediatelySetTranslationThreshold) {
        ViewCompat.setTranslationX(containerView, toX);
        return false;
    }

    ViewCompat.setTranslationX(containerView, prevTranslationX);

    final ViewPropertyAnimatorCompat animator = ViewCompat.animate(containerView);

    animator.setDuration(duration);
    if (interpolator != null) {
        animator.setInterpolator(interpolator);
    }
    animator.translationX(toX);
    animator.setListener(new ViewPropertyAnimatorListener() {
        @Override
        public void onAnimationStart(View view) {
            if (animatorListener != null) {
                animatorListener.onAnimationStart(view);
            }
        }

        @Override
        public void onAnimationEnd(View view) {
            animator.setListener(null);
            mActive.remove(holder);
            ViewCompat.setTranslationX(view, toX);
            if (animatorListener != null) {
                animatorListener.onAnimationEnd(view);
            }
        }

        @Override
        public void onAnimationCancel(View view) {
            if (animatorListener != null) {
                animatorListener.onAnimationCancel(view);
            }
        }
    });

    mActive.add(holder);

    animator.start();

    return true;
}

From source file:com.kozhevin.example.carousel.CarouselItemAnimator.java

private void animateRemoveImpl(final ViewHolder pHolder) {
    final View view = pHolder.itemView;
    ViewCompat.animate(view).cancel();/*from  w  ww  . j a  v  a  2s  . com*/
    if (getTranslationValueY() != 0 && mIsUseTranslationAnimation) {
        ViewPropertyAnimatorCompat lViewPropertyAnimatorCompat = ViewCompat.animate(view);
        lViewPropertyAnimatorCompat.setDuration(350);
        lViewPropertyAnimatorCompat.translationY(getTranslationValueY());
        lViewPropertyAnimatorCompat.setListener(new ViewPropertyAnimatorListener() {

            @Override
            public void onAnimationStart(View arg0) {
            }

            @Override
            public void onAnimationEnd(View arg0) {
                animateAlhaRemove(view, pHolder);
            }

            @Override
            public void onAnimationCancel(View arg0) {
            }
        });
        ViewCompat.animate(view).start();
    } else {
        if (mIsUseTranslationAnimation) {
            view.setAlpha(0f);
            mIsUseTranslationAnimation = true;
        }
        animateAlhaRemove(view, pHolder);

    }
    mRemoveAnimations.add(pHolder);
}

From source file:android.support.v7.internal.widget.ActionBarContextView.java

private ViewPropertyAnimatorCompatSet makeInAnimation() {
    ViewCompat.setTranslationX(mClose,/*from  w  ww .j  a  va  2 s  .com*/
            -mClose.getWidth() - ((MarginLayoutParams) mClose.getLayoutParams()).leftMargin);
    ViewPropertyAnimatorCompat buttonAnimator = ViewCompat.animate(mClose).translationX(0);
    buttonAnimator.setDuration(200);
    buttonAnimator.setListener(this);
    buttonAnimator.setInterpolator(new DecelerateInterpolator());

    ViewPropertyAnimatorCompatSet set = new ViewPropertyAnimatorCompatSet();
    set.play(buttonAnimator);

    if (mMenuView != null) {
        final int count = mMenuView.getChildCount();
        if (count > 0) {
            for (int i = count - 1, j = 0; i >= 0; i--, j++) {
                View child = mMenuView.getChildAt(i);
                ViewCompat.setScaleY(child, 0);
                ViewPropertyAnimatorCompat a = ViewCompat.animate(child).scaleY(1);
                a.setDuration(300);
                set.play(a);
            }
        }
    }

    return set;
}