我有以下平行四边形形状:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="200dp"
android:height="50dp"
android:viewportWidth="200"
android:viewportHeight="50">
<path android:fillColor="#000000"
android:pathData="M 200 0 L 20 0 L 0 50 L 180 50 L 200 0" />
</vector>
我以这种方式使用它
<View
android:layout_width="66dp"
android:layout_height="26dp"
android:layout_centerInParent="true"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="112dp"
android:background="@drawable/shape"
android:onClick="test"
android:tag="p112"
app:layout_constraintHorizontal_bias="0.615"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
现在我想在点击后将其颜色从黑色更改为白色。触摸后触发功能“测试”。但我发现所有背景颜色都会改变我的黑色平行四边形到白色矩形。有什么方法可以改变它的颜色。即使操纵xml也没关系。 TNX
测试功能:
public void test(View view){
view.setBackgroundColor(Color.WHITE);
}
答案 0 :(得分:5)
答案 1 :(得分:0)
尝试使用setBackgroundTint而不是颜色。这应该会改变背景资源。
答案 2 :(得分:-1)
您无法在运行时更改单个路径的颜色。但是,您可以更改整个矢量的颜色。