android.animation.ValueAnimator#start ( )源码实例Demo

下面列出了android.animation.ValueAnimator#start ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: RecyclerWheelPicker   文件: WheelPicker.java
public void doEnterAnim(final View contentView, long animDuration) {
    if (builder.gravity == Gravity.BOTTOM) {
        ValueAnimator enterAnimator = ValueAnimator.ofFloat(contentView.getHeight(), 0);
        enterAnimator.setDuration(animDuration);
        enterAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator animation) {
                float value = (float) animation.getAnimatedValue();
                contentView.setTranslationY(value);
            }
        });
        enterAnimator.start();
    } else {
        ScaleAnimation scaleAnimation = new ScaleAnimation(0F, 1.0F, 0F, 1.0F,
                Animation.RELATIVE_TO_PARENT, 0.5F, Animation.RELATIVE_TO_PARENT, 0.5F);
        scaleAnimation.setDuration(animDuration);
        scaleAnimation.setFillAfter(true);
        contentView.startAnimation(scaleAnimation);
    }
}
 
源代码2 项目: floatingsearchview   文件: FloatingSearchView.java
private void openMenuDrawable(final DrawerArrowDrawable drawerArrowDrawable, boolean withAnim) {
    if (withAnim) {
        ValueAnimator anim = ValueAnimator.ofFloat(0.0f, 1.0f);
        anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator animation) {

                float value = (Float) animation.getAnimatedValue();
                drawerArrowDrawable.setProgress(value);
            }
        });
        anim.setDuration(MENU_ICON_ANIM_DURATION);
        anim.start();
    } else {
        drawerArrowDrawable.setProgress(1.0f);
    }
}
 
源代码3 项目: ZZShow   文件: SplashActivity.java
private void startLogoOuterAndAppName() {
    final ValueAnimator valueAnimator = ValueAnimator.ofFloat(0, 1);
    valueAnimator.setDuration(1000);
    valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            float fraction = animation.getAnimatedFraction();
            KLog.d("fraction: " + fraction);
            if (fraction >= 0.8 && !isShowingRubberEffect) {
                isShowingRubberEffect = true;
                startLogoOuter();
                startShowAppName();
                finishActivity();
            } else if (fraction >= 0.95) {
                valueAnimator.cancel();
                startLogoInner2();
            }

        }
    });
    valueAnimator.start();
}
 
源代码4 项目: MyBookshelf   文件: SmoothCheckBox.java
private void startCheckedAnimation() {
    ValueAnimator animator = ValueAnimator.ofFloat(1.0f, 0f);
    animator.setDuration(mAnimDuration / 3 * 2);
    animator.setInterpolator(new LinearInterpolator());
    animator.addUpdateListener(animation -> {
        mScaleVal = (float) animation.getAnimatedValue();
        mFloorColor = getGradientColor(mUnCheckedColor, mCheckedColor, 1 - mScaleVal);
        postInvalidate();
    });
    animator.start();

    ValueAnimator floorAnimator = ValueAnimator.ofFloat(1.0f, 0.8f, 1.0f);
    floorAnimator.setDuration(mAnimDuration);
    floorAnimator.setInterpolator(new LinearInterpolator());
    floorAnimator.addUpdateListener(animation -> {
        mFloorScale = (float) animation.getAnimatedValue();
        postInvalidate();
    });
    floorAnimator.start();

    drawTickDelayed();
}
 
源代码5 项目: text_converter   文件: FloatingView.java
void run() {
    if (mDynamicUpdate == null) {
        mDraggableIcon.animate()
                .translationX(mDestX)
                .translationY(mDestY)
                .setDuration(mDuration)
                .setInterpolator(mInterpolator)
                .setListener(mAnimationFinishedListener);
    } else {
        ValueAnimator animator = ValueAnimator.ofInt(0, 100);
        animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator valueAnimator) {
                float percent = valueAnimator.getAnimatedFraction();
                mDraggableIcon.setTranslationX(mDynamicUpdate.getTranslationX(percent));
                mDraggableIcon.setTranslationY(mDynamicUpdate.getTranslationY(percent));
            }
        });
        animator.setDuration(mDuration);
        animator.setInterpolator(mInterpolator);
        animator.addListener(mAnimationFinishedListener);
        animator.start();
    }
}
 
源代码6 项目: mkloader   文件: PhoneWave.java
@Override public void setUpAnimation() {
  for (int i = 0; i < numberOfArc; i++) {
    final int index = i;

    ValueAnimator fadeAnimator = ValueAnimator.ofInt(126, 255, 126);
    fadeAnimator.setRepeatCount(ValueAnimator.INFINITE);
    fadeAnimator.setDuration(1000);
    fadeAnimator.setStartDelay(i * 120);
    fadeAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
      @Override public void onAnimationUpdate(ValueAnimator animation) {
        arcs[index].setAlpha((int)animation.getAnimatedValue());
        if (invalidateListener != null) {
          invalidateListener.reDraw();
        }
      }
    });

    fadeAnimator.start();
  }
}
 
源代码7 项目: YCDialog   文件: ScrollScaleAnimator.java
@Override
public void animateDismiss() {
    ValueAnimator animator = ValueAnimator.ofFloat(0, 1);
    animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            float fraction = animation.getAnimatedFraction();
            targetView.setAlpha(floatEvaluator.evaluate(fraction, 1f, startAlpha));
            targetView.scrollTo(intEvaluator.evaluate(fraction, 0, startScrollX),
                    intEvaluator.evaluate(fraction, 0, startScrollY));
            float scale = floatEvaluator.evaluate(fraction, 1f, startScale);
            targetView.setScaleX(scale);
            if(!isOnlyScaleX)targetView.setScaleY(scale);
            if(targetView.getBackground()!=null)targetView.getBackground().setAlpha((int) (fraction*255));
        }
    });
    animator.setDuration(animationDuration)
            .setInterpolator(new FastOutSlowInInterpolator());
    animator.start();
}
 
源代码8 项目: Depth   文件: CircularSplashView.java
public void startAnim() {
    RectF startRect = new RectF(targetSize.centerX(), targetSize.centerY(), targetSize.centerX(), targetSize.centerY());
    ValueAnimator rectSize = ValueAnimator.ofObject(new RectFEvaluator(), startRect, targetSize);
    rectSize.setDuration(animDuration);
    rectSize.setInterpolator(new QuintOut());
    rectSize.setStartDelay(startDelay);
    rectSize.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            drawingRect = (RectF) animation.getAnimatedValue();
            invalidate();
        }
    });
    rectSize.start();
}
 
源代码9 项目: DanDanPlayForAndroid   文件: AnimHelper.java
/**
 * 裁剪视图宽度
 * @param view
 * @param srcHeight
 * @param endHeight 大概高度,用于动画展示
 * @param duration
 */
public static void doClipViewHeight(final View view, int srcHeight, int endHeight, int duration) {
    ValueAnimator valueAnimator = ValueAnimator.ofInt(srcHeight, endHeight).setDuration(duration);
    valueAnimator.addUpdateListener(valueAnimator1 -> {
        ViewGroup.LayoutParams layoutParams = view.getLayoutParams();
        layoutParams.height = ViewGroup.LayoutParams.WRAP_CONTENT;
        view.setLayoutParams(layoutParams);
    });
    valueAnimator.setInterpolator(new AccelerateInterpolator());
    valueAnimator.start();
}
 
源代码10 项目: mollyim-android   文件: AlphaAnimation.java
private void start() {
  if (canAnimate && invalidate != null) {
    ValueAnimator animator = ValueAnimator.ofFloat(from, to);
    animator.setDuration(200);
    animator.setInterpolator(interpolator);
    animator.addUpdateListener(animation -> {
      animatedFraction = (float) animation.getAnimatedValue();
      invalidate.run();
    });
    animator.start();
  }
}
 
public void changeBackgroundColor(final View view, int from, int to) {
    int colorFrom = ContextCompat.getColor(this, from);
    int colorTo = ContextCompat.getColor(this, to);
    ValueAnimator colorAnimation = ValueAnimator.ofObject(new ArgbEvaluator(), colorFrom, colorTo);
    colorAnimation.setDuration(250); // milliseconds
    colorAnimation.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {

        @Override
        public void onAnimationUpdate(ValueAnimator animator) {
            view.setBackgroundColor((int) animator.getAnimatedValue());
        }

    });
    colorAnimation.start();
}
 
源代码12 项目: Puff-Android   文件: InkPageIndicator.java
private void setSelectedPage(int now) {
    if (now == currentPage || now >= pageCount) return;

    pageChanging = true;
    previousPage = currentPage;
    currentPage = now;
    final int steps = Math.abs(now - previousPage);

    if (steps > 1) {
        if (now > previousPage) {
            for (int i = 0; i < steps; i++) {
                setJoiningFraction(previousPage + i, 1f);
            }
        } else {
            for (int i = -1; i > -steps; i--) {
                setJoiningFraction(previousPage + i, 1f);
            }
        }
    }

    // create the anim to move the selected dot – this animator will kick off
    // retreat animations when it has moved 75% of the way.
    // The retreat animation in turn will kick of reveal anims when the
    // retreat has passed any dots to be revealed
    ValueAnimator moveAnimation = createMoveSelectedAnimator(dotCenterX[now], previousPage, now, steps);
    moveAnimation.start();
}
 
源代码13 项目: driveimageview   文件: DriveImageView.java
/**
 * This a animates a "blend-in" animation of the figure. The duration can be customised.
 *
 * @param duration The duration in milliseconds
 */
public void animateText(int duration) {
    ValueAnimator animation = ValueAnimator.ofFloat(0f, 1f);
    animation.setDuration(duration);
    animation.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator valueAnimator) {
            setAlphaValue((Float) valueAnimator.getAnimatedValue());
        }
    });
    animation.start();
}
 
private void fadeOut() {
    int colorFrom = Color.parseColor("#40000000");
    int colorTo = Color.parseColor("#00000000");
    ValueAnimator colorAnimation = ValueAnimator.ofObject(new ArgbEvaluator(), colorFrom, colorTo);
    colorAnimation.setDuration(250); // milliseconds
    colorAnimation.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {

        @Override
        public void onAnimationUpdate(ValueAnimator animator) {
            setBackgroundColor((int) animator.getAnimatedValue());
        }

    });
    colorAnimation.start();
}
 
源代码15 项目: GoogleFitExample   文件: MainActivity.java
@Override
public void onMenuExpanded() {
    overlay.clearAnimation();
    float viewAlpha = overlay.getAlpha();
    overlay.setVisibility(View.VISIBLE);

    ValueAnimator fadeAnim = ObjectAnimator.ofFloat(overlay, "alpha", viewAlpha, 1f);
    fadeAnim.setDuration(200L);

    fadeAnim.start();
}
 
源代码16 项目: floatingsearchview   文件: FloatingSearchView.java
private void fadeOutBackground() {
    ValueAnimator anim = ValueAnimator.ofInt(BACKGROUND_DRAWABLE_ALPHA_SEARCH_FOCUSED, BACKGROUND_DRAWABLE_ALPHA_SEARCH_NOT_FOCUSED);
    anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {

            int value = (Integer) animation.getAnimatedValue();
            mBackgroundDrawable.setAlpha(value);
        }
    });
    anim.setDuration(BACKGROUND_FADE_ANIM_DURATION);
    anim.start();
}
 
源代码17 项目: LB-Launcher   文件: DragView.java
public void crossFade(int duration) {
    ValueAnimator va = LauncherAnimUtils.ofFloat(this, 0f, 1f);
    va.setDuration(duration);
    va.setInterpolator(new DecelerateInterpolator(1.5f));
    va.addUpdateListener(new AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            mCrossFadeProgress = animation.getAnimatedFraction();
        }
    });
    va.start();
}
 
源代码18 项目: Amphitheatre   文件: Utils.java
public static void animateColorChange(final View view, int colorFrom, int colorTo) {
    ValueAnimator valueAnimator = ValueAnimator.ofObject(new ArgbEvaluator(), colorFrom, colorTo);
    valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animator) {
            view.setBackgroundColor((Integer)animator.getAnimatedValue());
        }
    });
    valueAnimator.start();
}
 
源代码19 项目: Slide   文件: MediaView.java
public static void fadeIn(View l) {
    ValueAnimator mAnimator = fadeAnimator(0.66f, 1, l);
    mAnimator.start();
}
 
源代码20 项目: Bitocle   文件: SuperCardToast.java
/**
 * Hide the SuperCardToast and animate the Layout. Post Honeycomb only. *
 */
@SuppressLint("NewApi")
private void dismissWithLayoutAnimation() {

    if (mToastView != null) {

        mToastView.setVisibility(View.INVISIBLE);

        final ViewGroup.LayoutParams layoutParams = mToastView.getLayoutParams();
        final int originalHeight = mToastView.getHeight();

        ValueAnimator animator = ValueAnimator.ofInt(originalHeight, 1)
                .setDuration(mActivity.getResources().getInteger(android.R.integer.config_shortAnimTime));

        animator.addListener(new AnimatorListenerAdapter() {

            @Override
            public void onAnimationEnd(Animator animation) {

                Handler mHandler = new Handler();
                mHandler.post(mHideImmediateRunnable);

            }

        });

        animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {

            @Override
            @SuppressWarnings("ConstantConditions")
            public void onAnimationUpdate(ValueAnimator valueAnimator) {

                if (mToastView != null) {

                    try {

                        layoutParams.height = (Integer) valueAnimator.getAnimatedValue();
                        mToastView.setLayoutParams(layoutParams);

                    } catch (NullPointerException e) {

                        /* Do nothing */

                    }


                }

            }

        });

        animator.start();

    } else {

        dismissImmediately();

    }

}