Peut GradientColor être utilisé pour définir un dégradé pour un remplissage ou le contour entièrement en XML?

J'étais en train de regarder la documentation pour GradientColor https://developer.android.com/reference/android/R.styleable.html#GradientColor . Comment puis-je définir un dégradé de couleur en XML et de l'appliquer à un XML vecteur dessiné?

J'ai essayé de color.xml, styles.xml et dans un XML vecteur dessiné.

J'ai l'erreur "impossible de convertir @id/gradclor dans un 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
"A échoué à convertir #FFFFFFFF #00FFFFFF 145 dans un ColorStateList" lors de l'utilisation:

<?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 le suivant color.xml:

<color name="GradientStrokeBorder">
    <item name="android:startColor">#FFFFFF</item>
    <item name="android:endColor">#00FFFF</item>
    <item name="android:angle">145</item>
</color>
InformationsquelleAutor TTransmit | 2016-11-29