Alguém pode explicar o meio de interrogação nos atributos XML do Android?
<TextView
style="?android:attr/windowTitleStyle"
More attributes
/>
android
xml
android-styles
Casebash
fonte
fonte
O ? permite que você consulte um atributo de estilo em vez de um recurso específico codificado . Consulte "Referenciando atributos de estilo" no Guia do desenvolvedor do Android para obter detalhes.
Então, como isso é realmente útil? Faz mais sentido ao considerar vários temas que contêm o mesmo atributo de recurso personalizado .
Digamos que você tenha temas relacionados a filmes como MyThemeTransformers e MyThemeHobbit e ambos tenham um atributo chamado movieIcon . E esse atributo movieIcon aponta para um recurso @ extraível diferente, como robot.png ou hobbit.png, em cada definição de tema.
Você pode consultar " ? Attr / movieIcon " em qualquer lugar em que o tema estiver em vigor (como em uma barra de ferramentas ou caixa de diálogo ou em qualquer tipo de layout de exibição) e apontará automaticamente para o desenho correto quando você alternar entre temas. Você não precisa de nenhuma lógica dependente de tema para usar os diferentes drawables. Você acabou de definir o atributo movieIcon para cada tema e a estrutura do Android cuida do resto.
fonte