J'ai consulté la documentation relative à GradientColor https://developer.Android.com/reference/Android/R.styleable.html#GradientColor . Comment définir un dégradé de couleurs en XML et l'appliquer à un objet vectoriel XML ?
J'ai essayé dans color.xml, styles.xml et dans un dessin vectoriel XML.
J'obtiens l'erreur " Failed to convert @id/gradclor into a ColorStateList " avec :
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="120dp"
android:height="120dp"
android:viewportWidth="120.0"
android:viewportHeight="120.0">
<path
android:name="play_triangle"
android:pathData="M 30 30 L 30 90 L 80 60 z"
android:strokeColor="@id/gradclor"
android:strokeWidth="5"/>
<color
android:name="@+id/gradclor"
android:startColor="#FFFFFF"
android:endColor="#00FFFF"
android:angle="145"/>
</vector>
ou "Failed to convert #FFFFFF #00FFFFFF 145 into a ColorStateList" lors de l'utilisation de :
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="120dp"
android:height="120dp"
android:viewportWidth="120.0"
android:viewportHeight="120.0">
<path
android:name="play_triangle"
android:pathData="M 30 30 L 30 90 L 80 60 z"
android:strokeColor="@color/GradientStrokeBorder"
android:strokeWidth="5"/>
</vector>
avec ce qui suit dans color.xml :
<color name="GradientStrokeBorder">
<item name="android:startColor">#FFFFFF</item>
<item name="android:endColor">#00FFFF</item>
<item name="android:angle">145</item>
</color>