android 色调动画不起作用

android tint animation doesn't work

我有自定义 ImageView,它应该在使用 setColorFilter:

从纯色背景色加载到图像后对其内容进行动画处理
private void _animate() {
    int bgColor= ContextCompat.getColor(getContext(), R.color.iconPlaceholderBg);
    int transparent=ContextCompat.getColor(getContext(),android.R.color.transparent);
    ValueAnimator bgAnim= ValueAnimator.ofObject(new ArgbEvaluator(),bgColor,transparent);
    bgAnim.setDuration(5000);
    //bgAnim.setInterpolator(new DecelerateInterpolator());
    bgAnim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            //Log.d("anim",animation.getAnimatedFraction()+"")
            //Image.this.clearColorFilter();
            Image.this.setColorFilter((int)animation.getAnimatedValue());
        }
    });
    bgAnim.start();
}

动画本身按扩展运行(5 秒长)。但是内容会立即出现在最终位置(没有颜色转换)。我尝试了不同的 PorterDuff.Mode 模式,但看起来像 none他们做事正确。
是否有任何变通方法可以达到预期效果?

问题出在我的背景颜色上 ​​tranparency.For 由于某些原因 setColorFilter 使用 trasparent 时效果不尽如人意 colors.I 已通过以下解决方法获得所需的行为:

Image.this.getDrawable().setAlpha((int) (animation.getAnimatedFraction()*255));