gpt4 book ai didi

android - 动画 ImageView 可绘制颜色变化

转载 作者:行者123 更新时间:2023-11-30 02:16:15 30 4
gpt4 key购买 nike

我正在尝试使用动画更改可绘制形状的颜色。可绘制对象显示在 ImageView 中,颜色通常使用 setColorFilter() 设置。

我尝试过使用 TransitionDrawable 和 ObjectAnimator,但无论我尝试什么都没有发生。

有谁知道该怎么做,或者如果我做错了什么?

这是我要更改颜色的形状:

<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">

<solid
android:color="@color/circle"/>

<size
android:width="70dp"
android:height="70dp"/>
</shape>

还有我上次尝试使用 TransistionDrawable 的代码:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
out = new TransitionDrawable(new Drawable[]{getResources().getDrawable(R.drawable.white_circle, getTheme()), getResources().getDrawable(R.drawable.circle, getTheme())});
} else {
out = new TransitionDrawable(new Drawable[]{getResources().getDrawable(R.drawable.white_circle), getResources().getDrawable(R.drawable.circle)});
}
out.setCrossFadeEnabled(true);
out.startTransition(1000);

white_circle 与 circle 完全相同,但颜色为白色

最佳答案

不幸的是,我没有找到在 Android 中使用动画更改形状颜色的方法,我使用了另一种解决方案。

我创建了两次对象,显示在完全相同的位置,一次使用起始颜色,一次使用结束颜色。当需要过渡时,我只需淡出旧图像并淡入新图像。

如果有人仍然想办法在不使用第二个对象的情况下为其设置动画,请随时回答这个问题。

关于android - 动画 ImageView 可绘制颜色变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29305688/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com