Kann jemand das Fragezeichen in Android XML-Attributen erklären?
<TextView
style="?android:attr/windowTitleStyle"
More attributes
/>
android
xml
android-styles
Casebash
quelle
quelle
Das ? Mit dieser Option können Sie auf ein Stilattribut anstatt auf eine bestimmte fest codierte Ressource verweisen . Weitere Informationen finden Sie unter "Referenzieren von Stilattributen" im Android Dev Guide.
Wie ist das eigentlich sinnvoll? Dies ist am sinnvollsten, wenn mehrere Themen mit demselben benutzerdefinierten Ressourcenattribut berücksichtigt werden .
Angenommen, Sie haben filmbezogene Themen wie MyThemeTransformers und MyThemeHobbit und beide haben ein Attribut namens movieIcon . Und dieses movieIcon-Attribut verweist in jeder Themendefinition auf eine andere @ drawable-Ressource, z. B. robot.png oder hobbit.png.
Sie können überall dort auf " ? Attr / movieIcon " verweisen, wo das Thema aktiv ist (z. B. in einer Symbolleiste oder einem Dialogfeld oder in einem beliebigen Ansichtslayout ), und es zeigt automatisch auf das richtige Zeichenelement, wenn Sie zwischen Themen wechseln. Sie benötigen keine themenabhängige Logik, um die verschiedenen Zeichen zu verwenden. Sie definieren einfach das movieIcon-Attribut für jedes Thema und das Android-Framework kümmert sich um den Rest.
quelle