La configuración de color del botón predeterminado en el soporte V7 de Android
Sabemos que el tema se puede configurar en el archivo estilos.xml. Algunos colores establecidos en el tema se aplicarán al control AppCompat predeterminado, lo que facilita mantener la coherencia de toda la aplicación en la interfaz de usuario. . A continuación se muestra un ejemplo:
En cuanto a cómo los distintos controles aplican estas configuraciones de color, se necesitan más experimentos.
Por ejemplo, el color predeterminado del icono de la barra de navegación de Actividad es colorControlNormal, el color de fondo de la barra de navegación es colorPrimary y el color predeterminado de la barra de estado inmersiva es colorPrimaryDark
Por ejemplo, el color predeterminado de FAB es colorAccent;
Por ejemplo, el color predeterminado del estado seleccionado de AppCompatCheckBox es colorAccent y el color predeterminado del estado no seleccionado es colorControlNormal
<; p> Por ejemplo, el color predeterminado del icono desplegable de AppCompatSpinner también es colorControlNormal.......
De hecho, los principales parámetros involucrados son los siguientes parámetros:
Entonces la pregunta es, si usas azul El inmersivo La barra de estado y los íconos en la barra de navegación son blancos. Cuando se usa AppCompatCheckBox en esta actividad, el estado no seleccionado también es blanco. En este momento, si está sobre un fondo blanco, el usuario no podrá ver que se trata de AppCompatCheckBox. ¿Qué hacer en este momento? Como se muestra a continuación (se usa AppCompatSpinner en la imagen):
En realidad, es muy simple. Use app: theme="@style/MyCheckBox" en este AppCompatCheckBox y luego agregue otros nuevos en estilos.xml. /p >
Sin embargo, cabe señalar que esto puede provocar cambios en otras propiedades predeterminadas del control. Por ejemplo, el tamaño del texto de CheckBox pasará a ser 1 (el mismo que el tamaño de fuente predeterminado de la aplicación cuando app:theme). no se utiliza).
Las funciones de android:theme y app:popupTheme, y la solución al problema de que no funcionan por debajo de android 3.0