30 votes

Attributs personnalisés dans Android

J'essaie de créer un attribut personnalisé appelé Tag pour tous les éléments modifiables. J'ai ajouté ce qui suit à attrs.xml

 <declare-styleable name="Spinner">
    <attr name="tag" format="string" />
</declare-styleable>

<declare-styleable name="EditText">
    <attr name="tag" format="string" />
</declare-styleable>
 

Je reçois une erreur disant "La balise d'attribut a déjà été définie" pour EditText. N'est-il pas possible de créer un attribut personnalisé du même nom sur différents éléments?

70voto

ninjasense Points 5934

Si vous allez utiliser un attr à plusieurs endroits, placez-le dans l'élément racine à l'intérieur de l'élément <resources> comme suit:

 <resources>

    <attr name="tag" format="string" />

    <declare-styleable name="Spinner">
        <attr name="tag" />
    </declare-styleable>

    <declare-styleable name="EditText">
        <attr name="tag" />
    </declare-styleable>

</resources>
 

Vous pouvez maintenant utiliser l'attribut tag partout où vous le souhaitez dans ce fichier XML.

J'espère que ça t'as aidé.

5voto

Qberticus Points 20157

Voir si ma réponse détaillée sur les attributs personnalisés aide: [Android] Définir des attributs personnalisés

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X