Quelqu’un peut-il expliquer l’attr?

Je regarde l’exemple de code Honeycomb Gallery ( ici ) et j’ai parcouru le code suivant en essayant d’append des éléments d’action dans ma propre application:

 

Le ?attr me lance pour une boucle. Quelqu’un peut-il s’il vous plaît expliquer ce que cela fait? Comment est-ce lié à un dessinable? Je n’arrive pas à trouver de bonnes informations sur Google. Y a-t-il également une liste ou une galerie d’atsortingbuts que nous pouvons utiliser pour les icons au lieu de simplement menuIconCamera ?

Merci

Edit: J’ai fait quelques recherches et j’ai trouvé que attrs.xml ressemblait à ceci:

        

Malheureusement, cela me rend encore plus confus. Qu’est-ce que ça fait?

La valeur ?attr/menuIconCamera signifie qu’une icône de l’atsortingbut menuIconCamera du thème actuel sera utilisée.

Il doit y avoir un dessinable affecté à l’atsortingbut menuIconCamera quelque part dans le fichier themes.xml . S’il existe deux thèmes avec des valeurs différentes pour cet atsortingbut, l’icône réelle dépendra d’un thème actuellement utilisé.

Le fichier attrs.xml est utilisé pour définir des atsortingbuts personnalisés. Sans cette définition, le compilateur traitera les atsortingbuts inconnus comme étant erronés.

La syntaxe ?attr: est utilisée pour accéder aux atsortingbuts du thème en cours. Voir les atsortingbuts de style de référence .

Je sais que cet article est très ancien, mais je pense que l’explication suivante aidera les débutants à la comprendre facilement.

Donc, en termes simples,

someAtsortingbute="?attr/atsortingbuteName" signifie –

définir la valeur de someAtsortingbute à la valeur de atsortingbuteName dans le thème actuel

Un exemple courant se produit dans le style d’une barre d’outils

    

Ici, la valeur de android:background sera défini sur @color/primary_color car ?attr/colorPrimary fait référence à @color/primary_color dans le thème actuel (AppTheme)

Mon anglais n’est pas bon, désolé. Mais je connais cette question

android:icon="?attr/menuIconCamera" veut utiliser

attrs.xml

         

styles.xml

  

utilisez @drawable/ic_menu_camera_holo_light

Ceci est pour les atsortingbuts de style de référence. voir R.attr

 ?[:][/] 

Atsortingbuts de style de référencement