android怎么动态修改vector填充颜色?
要动态修改Android中的矢量图形(Vector)填充颜色,可以按照以下步骤:
- 在您的布局文件中,添加一个
ImageView
,并设置其src
属性为您的矢量图形文件。例如:
<ImageView
android:id="@+id/my_vector"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_vector_file"
/>
- 在您的活动(Activity)或片段(Fragment)中,获取对
ImageView
的引用,并将其转换为VectorDrawableCompat
。例如:
ImageView myVectorImageView = findViewById(R.id.my_vector);
VectorDrawableCompat myVectorDrawable = (VectorDrawableCompat) myVectorImageView.getDrawable();
- 调用
setTint
方法,以指定您想要的填充颜色。例如,如果您想将填充颜色更改为红色,您可以将其更改为以下代码:
myVectorDrawable.setTint(Color.RED);
- 如果您想更改其他属性(如边框颜色或宽度),您可以使用类似的方法调用其他
set
方法。例如,要设置边框颜色,您可以使用以下代码:
myVectorDrawable.setStroke(2, Color.BLUE);
请注意,在使用 setTint
和 setStroke
等方法时,您必须使用 VectorDrawableCompat
而不是原始的 VectorDrawable
类,以便您的应用程序在所有版本的 Android 上正常工作。