Una barra de estado en Android es una parte llamativa de la pantalla, todas las indicaciones de notificación, duración de la batería, tiempo, intensidad de la conexión y muchas cosas se muestran aquí. Un usuario de Android puede mirar una barra de estado varias veces mientras usa una aplicación de Android. Es una parte muy esencial del diseño que el color de la barra de estado siga la combinación de colores del diseño. Puede buscar muchas aplicaciones de Android en su teléfono y puede ver cómo lo cambiaron de acuerdo con sus colores primarios. Puede haber varias formas de cambiar el color de la barra de estado, pero le informaremos sobre los dos mejores métodos cuidadosamente seleccionados que puede usar en Java o Kotlin.
Método 1: crear un tema nuevo
Puede seguir este método en aplicaciones creadas con Kotlin o Java. Funcionará en ambos.
Paso 1: Abra Android Studio y comience un nuevo proyecto seleccionando una actividad vacía. Déle un nombre de su elección, luego seleccione su idioma y nivel de API. Por último, haga clic en finalizar.
Paso 2: busque un archivo XML llamado styles.xml navegando res/values/styles.xml .
Paso 3: busque otro archivo XML navegando por res/values/colors.xml y también agregue aquí el color que desea cambiar para la barra de estado.
Paso 4: Ahora, en el archivo style.xml, agregue el siguiente código justo antes de la etiqueta </resources> y cambie los colores según su elección. ColorPrimaryDark siempre será responsable del color de la barra de estado.
XML
<!-- Defined a new style with three items of color. --> <style name="DemoTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <!-- Defining that new color in ColorPrimaryDark --> <item name="colorPrimaryDark">@color/colorOfStatusBar</item> <item name="colorAccent">@color/colorAccent</item> </style>
Puede hacer lo mismo con android:statusBarColor , pero funcionará solo en el nivel 21 de API superior. ColorPrimaryDark para la barra de estado tampoco será compatible con el nivel 19 de API. De forma predeterminada, en la mayoría de los niveles de API, ColorPrimaryDark será el color predeterminado para statusBarColor, por lo que es bueno cambiar ColorPrimaryDark.
Sugerencia: puede crear varios temas y puede usarlos en cualquier actividad. En cualquier tema, hay un conjunto de colores que debe definirse, también puede crear nuevos colores en el archivo colors.xml en el mismo directorio y usarlo en el archivo styles.xml.
Paso 6: Ahora ve al manifiesto/AndroidManifest.xml y aquí busca la actividad para la que quieres aplicar ese tema o cambia el color de la barra de estado. y agregue un atributo android:theme=”@style/DemoTheme”.
¡Eso está hecho! Verifique su aplicación ejecutándola en un emulador o en un dispositivo físico.
Método 2: Uso del método setStatusBarColor
Este método solo se puede usar en el nivel 21 de API anterior. Oficialmente, el color de la barra de estado no es compatible con el nivel 21 de API. verificará la versión de la API de Android y luego ejecutará el código. No cambiará el color de la barra de estado por debajo del nivel API 21, pero el resto del código funcionará bien.
Paso 1: después de abrir Android Studio y crear un nuevo proyecto con una actividad vacía.
Paso 2: navegue a res/values/colors.xml y agregue un color que desee cambiar para la barra de estado.
Paso 3: en su MainActivity, agregue este código en su método onCreate. No olvide reemplazar su color deseado con colorName .
Java
if (Build.VERSION.SDK_INT >= 21) { Window window = this.getWindow(); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); window.setStatusBarColor(this.getResources().getColor(R.color.colorPrimaryDark)); }
Kotlin
if (Build.VERSION.SDK_INT >= 21) { val window = this.window window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS) window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS) window.statusBarColor = this.resources.getColor(R.color.colorPrimaryDark) }
Paso 4: intente ejecutar su aplicación en un emulador de Android o en un dispositivo físico. Ver los cambios.
La salida para ambos métodos será la misma:
Publicación traducida automáticamente
Artículo escrito por encrypter09 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA