如何动画Android上视图背景颜色的变化?
例如:
我有一个红色背景颜色的视图.视图的背景颜色变为蓝色.如何在颜色之间进行平滑过渡?
如果无法通过视图进行此操作,则欢迎使用其他选项.
Android Studio现在支持21岁以上的矢量资产,并将在编译时为较低版本生成png.我有一个矢量资源(来自材料图标)我想要更改填充颜色.这适用于21+,但生成的png不会改变颜色.有没有办法做到这一点?
<vector android:height="48dp" android:viewportHeight="24.0"
android:viewportWidth="24.0" android:width="48dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@color/primary" android:pathData="M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z"/>
Run Code Online (Sandbox Code Playgroud)
android vector-graphics android-studio android-vectordrawable
随着新的Android支持更新,矢量drawables获得向后兼容性.我有一个带有各种路径的矢量图像.我希望通过单击按钮或基于输入值以编程方式更改路径的颜色.是否可以访问矢量路径的name参数?然后改变颜色.
我有一个VectorDrawable由9个矩形组成.这被定义为drawables文件夹中的XML.我将此设置作为我在xml中声明的ImageView的背景.android:src="@drawable/squares00"
我想在运行时以编程方式更改一个或多个方块的颜色.我知道有办法使用VectorDrawable动画来做到这一点.但我想知道是否有更简单的方法来访问我在java中的vectorDrawable,更新其属性(设置一个或多个矩形的填充颜色),然后使用更新的VectoDrawable更新图像背景.我的目标是Android API 21(棒棒糖)
我在Android中遇到了VectorDrawable的问题.我有一个矢量可绘制文件(.xml),我想在位图上绘制它.我设法加载这个文件并在位图上绘制它.我可以改变它的填充颜色,但问题是我不能改变它的笔触和颜色.
任何帮助将不胜感激!
谢谢!
这是可绘制的文件:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="312dp"
android:height="312dp"
android:viewportWidth="312.7"
android:viewportHeight="312.699">
<path
android:pathData="M306.35,266.34c0,22.09 -17.91,40.01 -40,40.01L46.35,306.35c-22.09,0 -40,-17.92 -40,-40.01v-219.99c0,-22.11 17.92,-40 40,-40h220c22.09,0 40,17.9 40,40L306.35,266.34z"
android:strokeWidth="5"
android:fillColor="@color/transparent"
android:strokeColor="#231F20"/></vector>
Run Code Online (Sandbox Code Playgroud)
这是我加载和填充蓝色形状的方式:
Drawable drawable = getResources().getDrawable(R.drawable.graph_rounded_rectangle);
drawable.setBounds(0, 0, width, height);
drawable.setColorFilter(new PorterDuffColorFilter(getResources().getColor(R.color.blue), PorterDuff.Mode.MULTIPLY));
drawable.draw(canvas);
Run Code Online (Sandbox Code Playgroud)