2010-03-09 10 views
119

he un estilo aplicado a toda mi solicitud:¿Cómo aplicar un estilo a todos los botones de una aplicación Android

AndroidManifest.xml:

<application android:theme="@style/ApplicationStyle" android:icon="@drawable/icon" android:label="@string/app_name"> 

Y en mi styles.xml:

<style name="ApplicationStyle" parent="android:Theme"> 
    <item name="android:button">@style/CKButton</item> 
</style> 
<style name="CKButton" parent="android:style/Widget.Button"> 
    <item name="android:textSize">19sp</item> 
    <item name="android:layout_margin">0dip</item> 
    <item name="android:background">#ff0000</item> 
</style> 

Pero el estilo no se aplica.

Lo siento si acabo de utilizar el nombre falso en el ApplicationStyle-Item, pero no tengo ni idea de dónde buscar los nombres de objetos y simplemente se asume, que android:button se aplica a todos los botones.

+0

favor, eche un vistazo a mi respuesta en http://stackoverflow.com/a/26625931/1065835 –

Respuesta

180

Para estilos de Android, hace referencia a los atributos preestablecidos que Android ha establecido en R.attr. En este caso, parece que desea hacer referencia al android:buttonStyle. Creo que esto funcionaría:

<style name="ApplicationStyle" parent="android:Theme"> 
    <item name="android:buttonStyle">@style/CKButton</item> 
</style> 
+1

Dios, que estaba buscando esa funcionalidad para las edades. No tengo idea de por qué los botones 'textColor no siguen la propiedad textColor del tema principal. ¡Muchas gracias! –

+0

alguien que no sabe cómo hacer esto para spinner? – Mike6679

+26

Solo una nota: si el estilo CKButton no hereda @android: style/Widget.Button, el botón dejará de funcionar. – James

Cuestiones relacionadas