¿Cómo crear tus propios temas para Android?

Haz tu propio tema de Samsung

Para ello primero tenemos que crear un nuevo proyecto en android studio con una actividad vacía. En esta actividad colocaremos dos botones dos cambiar el tema actual, un TextView. A continuación puedes ver el archivo de diseño de la actividad.

En este ejemplo vamos a hacer una simple aplicación de modo noche y modo día. Cuando pulsemos los botones relacionados el tema de la aplicación cambiará y se aplicará a la actividad relacionada.

Ahora aquí primero vamos a definir algunos elementos de estilo que vamos a utilizar en nuestro tema. Estos elementos pueden ser el color de fondo, algunos valores de anchura y altura o tal vez algunos gradientes. Voy a definir los siguientes estilos dentro del archivo res/values/styles.xml bajo el elemento resources. No es necesario crear ningún archivo para esto.

A continuación he definido los estilos para el fondo de la actividad, botones y textviews para el modo oscuro y claro de mi tema personalizado. Puedes definir más elementos que utilices en tu proyecto.

Ahora es el momento de definir nuestros temas. En nuestro archivo style.xml definiré los temas como se indica a continuación. Para crear un tema primero hay que establecer un tema padre. Aquí he definido el tema AppCompat.NoActionBar. Cuando aplique este tema, primero se aplicará el tema padre y luego nuestras configuraciones se sobrepondrán a él. Aquí la barra de acción desaparecerá de acuerdo con el tema padre y luego se aplicarán nuestros estilos.

Editor de temas

Saltar a la secciónTabla de contenidosDesarrollo de temas personalizadosEdición de la páginaHistoria de la páginaEl siguiente tutorial explica cómo construir una aplicación que pueda cambiar entre múltiples temas distintos. Al final de este ejercicio, tendrás una mejor comprensión de algunas de las características principales de Android como – dibujables, estilos y temas. Para una visión más general de estos conceptos, consulta las notas de estilo y temas.

Un estilo en Android es una colección de pares atributo/valor aplicados a una vista. Un estilo es un recurso XML y separa los atributos de diseño de la disposición XML. Los estilos en Android son similares en concepto a CSS en la web porque separa el diseño del contenido. Un Tema es un Estilo que se aplica a toda la aplicación o a una determinada Actividad.

Definiremos múltiples temas en nuestra aplicación y utilizaremos una vista de spinner para cambiar entre los temas. Al final de este ejercicio, usted debe saber cómo definir un tema en sus recursos en un archivo XML, cómo definir los atributos del tema, cómo aplicarlos a su archivo de diseño, y finalmente cómo cambiar dinámicamente el tema de una actividad. A continuación se muestra el resultado final.

Parque temático de Samsung

Good Lock es posiblemente uno de los mejores paquetes de personalización suministrados por los OEM. Por desgracia, no muchos usuarios la conocen gracias a la falta de publicidad de Samsung. Good Lock te permite personalizar casi todo en tu teléfono a través de un conjunto de módulos que deben instalarse individualmente. LockStar y QuickStar permiten personalizar la pantalla de bloqueo y el panel de acceso rápido, respectivamente. MultiStar ofrece una experiencia multiventana mejorada y Nice Shot es un editor de capturas de pantalla multiuso. Samsung ha añadido un nuevo módulo de Good Lock llamado Theme Park que te permite crear y personalizar tus temas. Aquí tienes un tutorial paso a paso sobre cómo utilizarlo:

Paso 1: Descarga e instala Good Lock desde la Galaxy Store. Si no está disponible en tu región, descárgalo desde un sitio de terceros como APKMirror. Ten en cuenta que tendrás que repetir el proceso para todos los módulos individuales si decides seguir este camino.

Puedes utilizar Theme Park junto con otros módulos de Good Lock para personalizar aún más el aspecto de tu teléfono. La mejor parte es que todas las herramientas están certificadas por Samsung, por lo que no tienes que preocuparte de que terceros desvíen tus datos. Good Lock es compatible con la mayoría de los dispositivos que ejecutan One UI basado en Android 9.

Cómo hacer temas para teléfonos android

Para crear nuestro tema, necesitamos definir un conjunto de atributos y sus propiedades. Estos atributos nos ayudarán más tarde cuando definamos el resto de nuestros componentes y permitirán crear múltiples temas (por ejemplo, Dark y Light), de forma similar a lo que MaterialTheme nos proporciona por defecto.

https://gist.github.com/16a45f2fc1380c9b8a38492d4d505a67fYou puede encontrar una explicación detallada de la configuración inicial de la temática en How to create a truly material theme in Jetpack Compose, que fue mi guía de partida, por lo que no entraré en mucho detalle en cómo crear el Tema, los Colores y la Tipografía, sino que me centraré más en el reemplazo de componentes y en cómo conseguir el mismo comportamiento de colores y tipografía que tenemos en Jetpack Compose MaterialTheme.

Una cosa a tener en cuenta aquí es que estamos definiendo el TextStyle para la App con ProvideTextStyle así como proporcionando, a través de Composition, nuestros colores, formas, tipografía y ripple. Si quieres aprender más sobre la composición, lee este buen artículo de Elye.

Santiago Paez