Estoy pensando que los estilos más "globales" siempre son anulados por más estilos "locales". Por ejemplo, si redefino todos los botones para tener textSize = 40dip (aplicar ese estilo como un tema para la aplicación) y luego aplicar otro estilo a un botón específico que dice textSize = 10dip, entonces ese botón específico debe obtener 10dip textSize.Estilos, minHeight/maxHeight: No puedo obtener el maxHeight para anular el tema minHeight
Y así es como funciona, generalmente. Pero no cuando se trata de maxHeight. Aquí está el panorama:
En mi styles.xml tengo un estilo donde heredo el botón predeterminado y cambiar TEXTSIZE y minHeight, y luego otro estilo que establece algunos otros valores (pero también hereda de botón), al igual esto:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Button" parent="@android:style/Widget.Button">
<item name="android:textSize">26dip</item>
<item name="android:minHeight">60dip</item>
</style>
<style name="ButtonHeader" parent="@android:style/Widget.Button">
<item name="android:textSize">18dip</item>
<item name="android:minWidth">70dip</item>
<item name="android:maxHeight">10dip</item>
</style>
</resources>
que se aplica el primer estilo como tema de mi actividad que hace que todos los botones más grandes (minHeight = 60dip). Pero tengo un "encabezado" (donde tengo algunos otros botones) que no quiero tener un minHeight de 60dip, y para esos botones quiero usar el ButtonHeader, estableciendo el maxHeight en 10dip.
En mi header.xml que se parece a esto:
<Button style="@style/ButtonHeader" android:text="UPP" android:id="@+id/Header_Button_UPP" android:layout_width="wrap_content" android:layout_height="wrap_content" ></Button>
<Button style="@style/ButtonHeader" android:text="ALT" android:id="@+id/Header_Button_ALT" android:layout_width="wrap_content" android:layout_height="wrap_content" ></Button>
<Button style="@style/ButtonHeader" android:text="NAV" android:id="@+id/Header_Button_NAV" android:layout_width="wrap_content" android:layout_height="wrap_content" ></Button>
<Button style="@style/ButtonHeader" android:text="HIS" android:id="@+id/Header_Button_HIS" android:layout_width="wrap_content" android:layout_height="wrap_content" ></Button>
Estoy especificamente el estilo del botones, anulando el tema "global". Funciona en algunas partes; textSize para estos botones de encabezado está configurado correctamente en 18dip, pero se ignora maxHeight; estos botones también aumentan en altura a 60dip.
Si, en el estilo de ButtonHeader, establezco android: minHeight = "100dip", los botones en el encabezado aumentarán en tamaño a 100dip, anulando el tema. Pero, como se dijo anteriormente, cuando tengo android: maxHeight en su lugar, no pasa nada.
¿Qué me estoy perdiendo?
Nadie tiene idea? =) – Ted