JETPACK COMPOSE desde CERO: Modificadores | #2
Summary
TLDREn esta segunda lección del curso de Jetpack Compose, el instructor Moure de Buy Fries Moure guía a los estudiantes en la creación de interfaces de usuario nativas para Android. Se revisan los conceptos básicos y se profundiza en el uso de modificadores para cambiar la apariencia de los elementos visuales, como tamaños, distancias y colores. Se introduce el concepto de temas y se muestra cómo integrarlos en la jerarquía de vistas para aprovechar los estilos definidos por Material Design. El video también cubre cómo personalizar y reutilizar componentes, así como trabajar con diferentes configuraciones de modo oscuro y claro. El instructor anima a suscriptores a participar en la comunidad y a colaborar en el desarrollo de contenido.
Takeaways
- 😀 El curso de Moure de Djerba es una lección avanzada sobre el framework para crear interfaces de usuario nativas en Android.
- 👋 Bienvenida a la segunda lección del curso, donde se asume que ya se conocen los conceptos básicos introducidos en la primera lección.
- 📝 Se enfatiza la importancia de comprender los fundamentos vistos en la primera lección para entender mejor las explicaciones futuras.
- 🔧 Se introduce el concepto de 'modificadores' en Jetpack Compose, que permiten cambiar la apariencia visual de los elementos.
- 🎨 Los modificadores se aplican de forma funcional y se concatenan para modificar elementos visuales como tamaño, distancia y color.
- 📐 Se muestra cómo aplicar modificadores específicos, como 'padding', 'clip' y 'size', para ajustar la apariencia de componentes.
- 🖼️ Se explica cómo utilizar modificadores para cambiar la apariencia de imágenes, como agregar un fondo circular o un color de fondo.
- 🎨 Se menciona la importancia de la programación funcional en Jetpack Compose y cómo los modificadores se ejecutan en orden.
- 🌗 Se discute el uso de temas en la jerarquía de vistas y cómo se pueden utilizar para establecer propiedades como colores y tipografías.
- 🌙 Se muestra cómo cambiar la configuración de la vista para adaptarse a diferentes temas, como el modo oscuro y claro.
- 💬 Se invita a la comunidad a participar activamente, suscribirse al canal, compartir los videos y seguir en redes sociales.
Q & A
¿Qué es Moure y para qué sirve?
-Moure es un framework para crear interfaces de usuario nativas en Android, actualmente uno de los más modernos y potentes para el desarrollo de aplicaciones móviles.
¿Qué se aprendió en la primera lección del curso de Moure?
-En la primera lección se aprendió a crear un proyecto desde cero utilizando Moure y se hizo un 'Hola Mundo' para entender los principales conceptos fundamentales de Moure.
¿Qué es un 'Preview' en el contexto de Moure y cómo se utiliza?
-Un 'Preview' en Moure es una herramienta que permite ver el código en tiempo de desarrollo y ejecutar directamente en el emulador sin necesidad de iniciar el contexto completo de la aplicación.
¿Qué son los 'modificadores' en Moure y cómo funcionan?
-Los 'modificadores' en Moure son funciones que permiten cambiar la apariencia de los elementos visuales, como tamaños, distancias, colores, fuentes, etc. Se aplican mediante programación funcional y se concatenan para modificar visualmente los elementos.
¿Cómo se crea un padding en un elemento 'Row' en Moure?
-Para crear un padding en un elemento 'Row' en Moure, se utiliza el modificador 'padding' y se especifica el valor deseado, por ejemplo, '8.dp' para aplicar un padding de 8 puntos en todas las direcciones.
¿Qué es 'Space' en Moure y cómo se utiliza para crear separación entre elementos?
-En Moure, 'Space' es un elemento que se utiliza para crear una separación entre otros elementos. Se crea con un modificador que hace referencia a su altura o anchura para definir la cantidad de espacio que debe ocupar.
¿Cómo se aplican los modificadores de color y forma a una imagen en Moure?
-Para aplicar un color de fondo a una imagen en Moure, se utiliza el modificador 'background' seguido del color. Para hacer que la imagen sea circular, se utiliza el modificador 'clip' con el argumento 'Circle'. Es importante tener en cuenta el orden de los modificadores para que la imagen se muestre correctamente.
¿Qué es un 'tema' en Moure y cómo se utiliza en la jerarquía de vistas?
-Un 'tema' en Moure es un elemento compositivo que define el aspecto general de la aplicación, como colores, tipografías y formas. Se coloca dentro de la jerarquía de vistas y permite utilizar todas las propiedades definidas en él en otros componentes.
¿Cómo se modifica el color de un texto en Moure utilizando los temas?
-Para modificar el color de un texto en Moure, se puede utilizar la propiedad 'color' y establecerlo con un color definido en el tema, como 'MaterialTheme.colors.primary', o crear nuevos colores y utilizarlos en la propiedad 'color' del constructor del texto.
¿Cómo se cambia la tipografía de un texto en Moure?
-Para cambiar la tipografía de un texto en Moure, se utiliza el parámetro 'style' en el constructor del texto y se establece con un valor de 'TextStyle', el cual se puede obtener de 'MaterialTheme.typography' con los estilos predefinidos como 'title1' o 'subtitle2'.
¿Cómo se configura una vista para que se muestre en modo oscuro en Moure?
-Para configurar una vista en modo oscuro en Moure, se utiliza el parámetro 'darkMode' en la función 'Preview' y se establece en 'true'. Esto permite que los elementos utilicen los colores y estilos definidos para el modo oscuro.
Outlines
😀 Introducción a Jetpack Compose y conceptos básicos
El primer párrafo presenta la segunda lección de un curso sobre Jetpack Compose, el framework para crear interfaces de usuario nativas en Android. Se menciona la importancia de comprender los fundamentos y se hace referencia a la primera lección donde se creó un proyecto básico. Se enfatiza la necesidad de entender los conceptos básicos, como la estructura de la jerarquía en Compose y cómo utilizar previews para visualizar el código en tiempo real. Además, se invita a los espectadores a suscribirse al canal y a seguir en redes sociales para recibir tutoriales de programación y desarrollo de iOS y Android.
🛠️ Uso de modificadores y temas en Jetpack Compose
En el segundo párrafo se profundiza en el uso de modificadores en Jetpack Compose, que permiten cambiar la apariencia visual de los elementos. Se explica cómo aplicar modificadores como padding, tamaño fijo y color de fondo a filas, columnas e imágenes. También se menciona el uso de 'Space' para crear separaciones entre elementos. Se discute la programación funcional y cómo los modificadores se concatenan para aplicar cambios visuales. Se da un ejemplo de cómo hacer que una imagen sea circular y se ajusta su tamaño. Finalmente, se introduce el concepto de temas en Compose, explicando cómo se pueden utilizar como elementos compositivos y cómo se accede a las propiedades de los mismos para modificar aspectos visuales como colores y tipografía.
🌗 Adaptación a temas oscuros y claros en la interfaz
El tercer párrafo se enfoca en cómo se pueden adaptar los elementos de la interfaz para trabajar con temas oscuros y claros. Se muestra cómo cambiar los colores de los elementos para que se ajusten a los temas, utilizando constantes como 'white' y 'black' para referenciar colores específicos. Se discute la herencia de colores de Material Design y cómo se pueden modificar los colores de los textos y fondos. Además, se habla sobre la personalización de la tipografía y cómo se puede cambiar el estilo de los textos utilizando 'TextStyle'. Se menciona cómo ejecutar la preview en modo oscuro y cómo se pueden comparar visualmente los cambios entre los modos claro y oscuro. El párrafo concluye con una reflexión sobre la potencia y claridad del enfoque funcional y declarativo de Compose y se invita a los espectadores a compartir sus opiniones y a seguir en redes sociales y el servidor de Discord para una mayor interacción con la comunidad.
Mindmap
Keywords
💡Djerba
💡Jetpack Compose
💡Modificadores
💡Programación funcional
💡Preview
💡Temas
💡Material Design
💡Componentes
💡Propiedades
💡Modo Oscuro
Highlights
Bienvenida a la segunda lección del curso de Djerba Túnez, un framework para crear interfaces de usuario nativas en Android.
En la primera lección, se creó un proyecto básico con Levy y se hizo un 'Hola Mundo' para entender los conceptos fundamentales.
Se enfatizó la importancia de comprender los conceptos básicos para entender las explicaciones futuras.
Se introdujo el concepto de 'previews' para visualizar el código en tiempo de desarrollo.
Se explicó cómo ejecutar una preview directamente desde el emulador sin iniciar el contexto completo de la app.
Se introdujo el concepto de 'modificadores' en Jetpack Compose para cambiar la apariencia visual de los elementos.
Se mostró cómo aplicar modificadores como tamaño, distancias y colores a elementos visuales.
Se explicó la importancia de la programación funcional en Jetpack Compose y cómo los modificadores se aplican en orden.
Se mostró cómo crear un padding y aplicarlo únicamente a una dirección específica.
Se introdujo el elemento 'Space' en Jetpack Compose para crear separaciones entre elementos.
Se explicó cómo aplicar modificadores de altura o anchura a imágenes y textos.
Se mostró cómo hacer que una imagen se vea circular utilizando el modificador 'clip'.
Se explicó cómo cambiar el tamaño de una imagen utilizando el modificador 'size'.
Se introdujo el concepto de 'temas' en Jetpack Compose y cómo utilizarlos como elementos compositivos.
Se mostró cómo acceder a los colores definidos en el tema utilizando 'MaterialTheme'.
Se explicó cómo modificar el color de los textos utilizando la propiedad 'color'.
Se mostró cómo utilizar la propiedad 'TextStyle' para cambiar la tipografía de los textos.
Se explicó cómo cambiar la apariencia de la vista para el modo oscuro utilizando 'LocalNightMode'.
Se mostró cómo comparar la vista en modo claro y oscuro para ajustar la visualización.
Se resaltó la capacidad de componer y reutilizar elementos en Jetpack Compose, siguiendo el paradigma de programación funcional y declarativa.
Se invitó a los espectadores a dejar comentarios, suscribirse, activar la campanita y compartir los videos.
Se ofreció información sobre cómo seguir el canal en redes sociales y cómo unirse a la comunidad.
Transcripts
hola carmen qué tal estáis bienvenidos a
moure de segunda lección del curso de
djerba túnez el framework más actual
para crear interfaces de usuario nativas
en android quieres que continuemos
conociendo sus fundamentos y
familiarizándonos poco a poco con el
entorno pues comenzamos a picar
bienvenidos a moure de buy frys moure
tutoriales de programación y desarrollo
de ios y android
en la primera lección aprendimos a crear
nuestro proyecto conlleva con paul desde
cero e hicimos una especie de hola mundo
intentando enseñarte los principales
conceptos que tenemos que empezar a
tener claros para manejar ya para campus
si no lo has visto te lo dejo por aquí
arriba es esencial que comprendas los
conceptos vistos en esa primera clase
para entender todo lo que vamos a
explicar en esta en futuras clases
veremos conceptos mucho más definidos
pero creo que en estas primeras
lecciones es mejor trabajar con
diferentes elementos ya que así
tendremos una visión más amplia y
general de lo que significa ya para con
todos y sobre todo todo lo que nos puede
aportar y cuál es la forma que tenemos
de trabajar con él por supuesto como
siempre que estamos desarrollando
software lo principal es tener una buena
base conocer cómo funcionan bien todas
las piezas por separado que conforman
este rompecabezas que es lleva campos
para que una vez entendido nosotros
podamos empezar a unirlas y antes de
empezar decirte que si de verdad te
parecen útiles estos tutoriales no te
olvides de suscribirte al canal activar
la campanita y seguirme redes y por
supuesto de compartir estos vídeos dicho
esto lo vamos a abrir nuestro proyecto
andrés y estudio básicamente lo que
teníamos hasta el momento era esta
pequeña vista conformada por dos textos
y una imagen que habíamos aprendido a
componente zar y a estructurar dentro
del siempre teniendo en cuenta cómo
funcionaba la jerarquía en hierba
compost y como cualquier elemento
anotado con arroba com possible era
susceptible de utilizar como vista por
otra parte también aprendimos lo que son
las previews básicamente para poder ir
viendo nuestro código en tiempo de
desarrollo te conté que también
aparecería un icono en cada preview para
directamente ejecutar esta preview en el
emulador también sin necesidad de
iniciar el contexto completo de la en
algunos casos puede sernos útil este
mismo botón también aparecerá en la
parte visual en el propio lienzo de la
preview y si nos encontramos en la vista
dividida en la vista de script cuando
hacemos clic en cada uno de los
elementos se centrará su código en esa
paz si hago clic en la imagen vemos cómo
acaba de moverse el código y se ha
centrado la parte donde tenemos definido
el componente de imagen sigamos
conociendo conceptos de lleva campos
hasta ahora lo único que hemos hecho es
pintar y recolocar componentes pero en
ningún momento hemos modificado
visualmente cada uno de los componentes
algo por supuesto muy habitual en el
desarrollo de interfaces gráficas aquí
entra el concepto de modificador en
cualquiera de los elementos visuales que
nos aporta jetpack compose podremos
utilizar modificadores que básicamente
nos permiten cambiar la apariencia de
cada uno de nuestros elementos que
pueden ser estos modificadores por
ejemplo tamaños distancias colores
fuentes así que vamos a ir conociendo
algunos de ellos para utilizar un
modificador por ejemplo en row lo único
que tendremos que hacer es la creación
del elemento llamar a modify y para
acceder a cada uno de los modificadores
simplemente tendremos que llamar a
modify al aire concatenando cada una de
estas funciones que en realidad están
modificando visualmente nuestro elemento
la programación funcional es un pilar
muy importante dentro del epa con box
cada modificador realizará cambios sobre
el elemento actual y lo devolverá
modificado lo que devolverá es un nuevo
modify al que podremos seguir aplicando
nuevos modificadores ten en cuenta esto
ya que estos modificadores se van a
ejecutar en orden vamos a crear por
ejemplo un padding un patín en todas las
direcciones por ejemplo de 8 de pep por
defecto se creará en todas las
direcciones y si ahora revisamos nuestro
layout vemos que tiene un margen en
todas ellas un margen por supuesto de 8
mp si quisiéramos aplicarlo únicamente
al margen superior por ejemplo lo
igualaríamos a top refrescamos nuestra
preview y vemos como ahora únicamente
aplica al margen superior en nuestro
caso lo vamos dejar como estaba la
inmensa mayoría de los modificadores son
comunes a todos los elementos igual que
estamos aplicando nuestra fila lo
podríamos aplicar a nuestra columna por
ejemplo en este caso le indicado que
sólo actúe en el start es decir al
principio apareciendo esta separación en
el medio sigamos hablando de cómo crear
separación es conociendo un nuevo
elemento con possible llamado space yo
en mi caso quiero crear una separación
entre estos dos elementos así que entre
ellos voy a crear un space en un space
air con un modificador pero que en este
caso haga referencia a su altura
llamando a la propiedad height por
ejemplo con 16 de que ocurriría
aparecerá una separación entre los
textos de 16 y los spitzer es muy
habitual utilizar modificadores de
altura o de anchura conozcamos
modificadores de otro tipo esta vez
aplicados a la imagen y a los textos el
constructor de nuestra imagen tenía dos
parámetros si queremos añadir el
modificador únicamente escribimos una
coma y llamamos a modify al igual que
hemos hecho anteriormente que queremos
aplicarle un color de fondo tan fácil
como llamar a background pasándole un
color queremos que nuestra imagen se vea
circular pues aquí vamos a ver por
primera vez cómo seguimos concatenando
modificadores simplemente escribimos un
punto y colocamos el siguiente
modificador llamando a clip y pasándole
un site en nuestro caso circle pero si
refrescamos la preview vemos lo
siguiente la imagen sigue siendo
cuadrada esto hace referencia al orden
en el que estamos ejecutando los
modificadores ya que antes hemos pintado
todo el fondo de color gris un fondo que
ha actuado sobre un cuadrado en este
caso tendremos que invertirlos antes
tendremos que hacer que la imagen sea
redonda y después aplicarle un color de
fondo si ahora refrescamos vemos que en
este caso sí que funciona la imagen
parece que es muy grande vamos a darle
un tamaño fijo para eso simplemente
vamos a concatenar un nuevo modificado
en este caso llamado size donde le
podemos pasar un tamaño fijo o una
altura y una anchura en nuestro caso
como queremos que mantenga la proporción
le vamos a dar a todos los lados el
mismo tamaño por ejemplo 64 de p en este
caso no tendríamos ningún problema en
ponerlo al principio o al final ya que
es un modificador que no importa el
orden en el que se aplique por lo menos
con los modificadores que tenemos hasta
ahora que por cierto voy a formatear
para dejar cada uno en una línea y que
los veamos de una forma más simple el
siguiente concepto del que quiero hablar
es el concepto de tema decirte que en
este caso los temas también funcionarán
como elementos compositivos con lo cual
los tendremos que colocar dentro de
nuestra jerarquía de vistas en mi caso
como elemento superior el tema principal
de nuestra app se llamará como el propio
en nuestro caso hierba compost tutorial
fin que ha añadido en el set content y
que dentro colocar en my component el
elemento que estábamos pintando la raíz
que en realidad se corresponde con toda
nuestra vista haremos lo mismo también
en la preview en este momento ya
podríamos empezar a utilizar dentro de
la jerarquía de vistas con possible los
elementos de nuestro tema si no sabes de
dónde sale este tema decirte que tendrás
una carpeta dentro de la llamada fin con
un fichero coaching de este mismo nombre
aquí por defecto tendremos un elemento
con possible que ha creado el sistema
que básicamente se ha encargado de
definir diferentes colores tanto en su
modo claro como modo oscuro y utilizando
como base material design dentro
tendremos diferentes ficheros para
definir los colores the shapes e incluso
la tipografía por supuesto esto es
totalmente configurable en nuestro caso
lo dejaremos por defecto y empezaremos a
ver cómo trabajar con temas dentro de
nuestra vista como jerárquicamente el
elemento superior es nuestro tema ya
podremos empezar a utilizar todas las
propiedades definidas dentro de vayamos
al color de nuestra imagen como nuestro
tema hereda de material design podremos
acceder a material fin y a los colores
que hemos definido por ejemplo llamando
a prime ar y si nos vamos a nuestro tema
por ejemplo a la paleta clara que
estamos ahora veremos que como primary
tenemos definido este color morado si
queremos por ejemplo modificar el color
de nuestros textos podremos utilizar la
propiedad directamente color pero que en
este caso vamos a aprovechar a pasársela
como parámetro a nuestro elemento de
vista a parte del texto le pasaremos un
color que será de tipo color el
constructor de texto admite una
propiedad llamada color que igualaremos
al color que le llega a nuestro
componente my text en este momento
nuestro programa va a mostrar un error a
nuestro componente my text le falta
pasar ese color por supuesto podemos
seguir accediendo a material film ya los
colores que hemos definido establece
accediendo a primark iberia y en este
caso vamos a definir un nuevo color en
colores por ejemplo vamos a crear el
color blanco y negro simplemente creando
dos constantes que hagan referencia a
esos colores y ya tenemos creados en el
sistema en nuestro tema teníamos
definida la paleta de colores clara y
oscura pudiendo en cada una de las
paletas establecer estos nuevos colores
utilizando esos y las propiedades que
podemos sobreescribir las propiedades
que contienen la palabra on hace
referencia a los textos que actúan sobre
los colores de estos mismos valores por
ejemplo un background por defecto es el
color del texto dentro de los elementos
con la propiedad así que es un buen
sitio para utilizar nuestros nuevos
colores por ejemplo en el background del
modo oscuro diremos que el color del
texto sea blanco y en el modo claro al
contrario sea negro de todas formas si
entramos en el código por defecto ya
veremos que se comporta así pero así
también vamos comprendiendo cómo
funcionan los temas si ahora volvemos a
nuestro componente voy a indicar que
nuestro segundo texto tenga el color o
bagram si refrescamos veremos cómo se
han aplicado los dos colores y como para
que se vea mejor a nuestra fila le vamos
a dar un color de fondo y amanda bagram
y al color que por defecto tenemos
definido llamado background que es
blanco en el modo claro y negro en el
modo oscuro y ahora modificamos su orden
aplicamos primero el background y
después el padding lo que veremos es
como el color de fondo también aplica el
padre veamos una nueva propiedad y en el
texto que hace referencia a su
tipografía a nuestro texto le vamos a
pasar un nuevo parámetro un parámetro
llamado style que será el tipo text
style también perteneciente con post la
propiedad style la igual haremos al moho
para mí y en la creación de nuestros
textos le pasaremos el estilo del texto
que queremos pintar también haremos
referencia a material film en este caso
a tipografía pudiendo acceder así a las
diferente tipografías definidas por
defecto en el sistema a las que le dado
los valores title 1 y sub title 2
viéndose de esta forma por supuesto
también son valores que podemos
redefinir último veamos cómo modificar
nuestra preview para que se ejecute en
modo oscuro simplemente en preview
tendremos que pasarle un parámetro que
se llama weymouth llamaremos a
configuration y aymond night a yes
acordándote siempre de importar la
referencia correcta que ha pasado en
este caso los colores han cambiado
automáticamente utilizando el
correspondiente definido en el modo
oscuro que queremos estar comparando
continuamente como se vería en modo
claro oscuro pues simplemente en nuestro
elemento compositivo el que hace
referencia a la preview loa notaremos de
nuevo con preview pero este caso sin
configurar le nada es decir como lo
teníamos al principio pasando a ver
directamente una preview en modo claro y
una preview configurada como modos en la
que detectamos por ejemplo que el texto
de título no se ve muy bien así que voy
a modificar para utilizar prime are y en
vez de prime ar hiparión ya que parece
que en ese caso el color se adaptará
mucho mejor espero que te haya parecido
muy útil lo que hemos visto en esta
segunda lección y que poco a poco el
flujo de trabajo en hierba con posters
así personalmente si lo comparamos con
la forma a la que teníamos de elaborar
vistas anteriormente esta es mucho más
potente y por supuesto mucho más clara
al verla directamente desde código y en
las previews recuerda que el principio
general de compost es la capacidad de
componen tirar y reutilizar todo esto
desde el paradigma de programación
funcional y declarativo déjame en
comentarios que te ha parecido la clase
y si te ha gustado no te olvides de
suscribirte activar la campanita dejar
tu like y compartirlo también me puedes
encontrar en redes sociales como arroba
murete en twitter instagram 'tik tok' y
sobre todo en tuits donde hacemos
directos de lunes a viernes sobre
programación y tecnología y si quieres
colaborar aún más con la comunidad
puedes unirte al servidor de disco y
formar parte del programa de miembros
del canal en youtube o de suscriptores
en tweets como cada semana a muchísimas
gracias por seguir ahí y por ayudarme a
poder continuar a crear este tipo de
contenido nos vemos muy pronto en la
próxima elección hasta otra carmen
[Música]
[Música]
Weitere ähnliche Videos ansehen
5.0 / 5 (0 votes)