Android做颜色渐变背景方案

1,017 阅读1分钟

WeChat_20210416111055.gif

用的ArgbEvaluator类的evaluate方法

        View view = findViewById(R.id.v_bg);
        ArgbEvaluator argbEvaluator = new ArgbEvaluator();
        ValueAnimator valueAnimator = ValueAnimator.ofFloat(0 ,1);
        valueAnimator.setDuration(5000);
        valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator animation) {
                //可以根据进度百分比 animation.getAnimatedFraction()更新
                int evaluate = (int) argbEvaluator.evaluate(animation.getAnimatedFraction(), Color.parseColor("#FF0000"), Color.parseColor("#00FF00"));
                view.setBackgroundColor(evaluate);
            }
        });
        valueAnimator.start();

根据百分比更新颜色 也可以用时间来更新,下面↓↓↓↓有封装的 GradienteView类 码云 gitee.com/woslxm_lime…