JETPACK COMPOSE desde CERO: Listas | #3

MoureDev by Brais Moure
17 Oct 202110:51

Summary

TLDREste tutorial de programación y desarrollo para Android y iOS, impartido por Moure Dead by Price Mobile, enseña a trabajar con Jetpack Compose, un framework para construir interfaces de usuario nativas de Android. Aprende a integrar componentes en una columna con scroll, creando interfaces más complejas y eficientes. Se abordan conceptos como la reutilización de componentes, la creación de elementos compositivos y el uso de 'LazyColumn' para renderizar elementos en pantalla de manera eficiente. El objetivo es mejorar la experiencia del usuario y la performance de la aplicación al trabajar con listados, como los que podrían provenir de una base de datos.

Takeaways

  • 😊 En esta clase aprenderemos a trabajar con scrolls y listas en Android.
  • 📱 Jetpack Compose es el framework actual para construir interfaces de usuario en apps Android nativas.
  • 💡 La clase anterior es esencial para entender esta lección.
  • 🔔 Suscribirse y activar la campanita en el canal de YouTube es la mejor manera de apoyar al creador.
  • 🖥️ Modificar la preview del modo claro permite visualizar el componente en una pantalla real.
  • 🔄 Replicar el componente 'my component' dentro de una columna puede causar que se salga de la pantalla si no se usa scroll.
  • ⬆️ Añadir un scroll vertical a la columna permite desplazar y visualizar todos los componentes.
  • 📝 Crear una clase de datos 'main message' para manejar el título y el cuerpo de los mensajes.
  • 🔄 Usar 'lazy column' en lugar de 'column' para pintar listas y consumir menos memoria.
  • ⚡ 'Lazy column' renderiza solo los elementos que se muestran en la pantalla, mejorando el rendimiento.

Q & A

  • ¿Qué es el curso de 'Murder Continua' sobre el que habla Carmen en el video?

    -El curso de 'Murder Continua' es un tutorial sobre cómo trabajar con Jetpack Compose, una herramienta para construir interfaces de usuario de aplicaciones Android nativas.

  • ¿Qué es Jetpack Compose y para qué se usa?

    -Jetpack Compose es un framework de Google que permite a los desarrolladores crear interfaces de usuario de Android de manera más eficiente y moderna, reemplazando las vistas tradicionales y el uso de XML.

  • ¿Cuál es el propósito principal de las vistas reutilizables vistas vistas en el contexto de este tutorial?

    -Las vistas reutilizables son componentes que se pueden utilizar en diferentes partes de la aplicación, facilitando el manejo de textos, imágenes, colores y estilos, y permitiendo una mejor organización y mantenimiento del código.

  • ¿Qué es un 'scroll' y cómo se implementa en Jetpack Compose?

    -Un 'scroll' es una función que permite desplazarse por contenido que excede los límites de la pantalla. En Jetpack Compose, se implementa utilizando el modificador 'Modifier.verticalScroll' y asociándolo con un estado de scroll.

  • ¿Cómo se pueden simular diferentes pantallas en la vista previa de Jetpack Compose?

    -Se puede simular diferentes pantallas utilizando la propiedad 'theme' para cambiar entre el modo claro y oscuro, y ajustando el tamaño de la vista previa para adaptarse a diferentes resoluciones de pantalla.

  • ¿Qué es un 'data class' y cómo se utiliza en el contexto de este tutorial?

    -Un 'data class' es una clase especial en Kotlin que se utiliza para representar objetos inmutables y es útil para pasar datos como parámetros. En el tutorial, se utiliza para crear un objeto 'MainMessage' que engloba un título y un cuerpo de texto.

  • ¿Qué es 'LazyColumn' y cómo difiere de 'Column' en Jetpack Compose?

    -LazyColumn es un componente de Jetpack Compose que solo renderiza los elementos que están visibles en la pantalla, lo que mejora la eficiencia y el rendimiento al trabajar con listas largas. Por otro lado, 'Column' simplemente apila los elementos verticalmente sin esta optimización.

  • ¿Cómo se pueden personalizar los componentes en Jetpack Compose para mostrar diferentes tipos de contenido?

    -Se pueden personalizar los componentes en Jetpack Compose pasando parámetros personalizados, como se hizo con 'MyText' que recibe un título y un cuerpo, permitiendo así mostrar diferentes tipos de contenido.

  • ¿Qué es 'Items' y cómo se utiliza en 'LazyColumn' para iterar sobre una lista de elementos?

    -Items es una función de Jetpack Compose que se utiliza dentro de 'LazyColumn' para iterar sobre una lista de elementos. Se encarga de renderizar los componentes correspondientes a cada elemento de la lista solo cuando son visibles en la pantalla.

  • ¿Qué se puede hacer para mejorar la interacción con las listas en Jetpack Compose?

    -Para mejorar la interacción con las listas, se pueden agregar gestos de interacción como clics o toques, lo que permite a los usuarios interactuar con los elementos de la lista y actualizar la interfaz de la aplicación de manera dinámica.

Outlines

00:00

📚 Introducción al uso de scrolls y listas en Jetpack Compose

El primer párrafo presenta una clase de programación sobre cómo trabajar con scrolls e interfaces de usuario en Jetpack Compose para Android. Se enfatiza la importancia de adaptar la aplicación más allá de la pantalla del dispositivo y se menciona la necesidad de integrar componentes que puedan ocupar más espacio. Se describe cómo utilizar el scroll vertical para desplazarse por componentes que se repiten en una columna y cómo esto permite visualizar todos los elementos en la pantalla. Además, se invita a los espectadores a seguir el canal y participar en las sesiones de programación en vivo en Twitch.

05:01

🛠️ Desarrollo de componentes reutilizables y manejo de listas

En el segundo párrafo, se continúa el tutorial enfocado en el desarrollo de interfaces de usuario para aplicaciones Android con Jetpack Compose. Se aborda cómo hacer que el componente 'MyComponent' sea más genérico para mostrar diferentes textos y cómo crear un 'data class' llamado 'MainMessage' para manejar los parámetros de título y cuerpo de texto. Se discute la idea de reutilizar componentes y cómo mostrar listados de mensajes utilizando 'LazyColumn' y 'items', lo que permite una representación eficiente de la interfaz y un uso óptimo de la memoria. Se enfatiza la importancia de trabajar con listas para mostrar elementos que están dentro de los márgenes de la pantalla y se sugiere cómo se podría interactuar con estas listas en futuras clases.

10:01

🎉 Conclusión y llamado a la acción para la comunidad

El tercer párrafo concluye el tutorial agradeciendo el apoyo de la comunidad y animando a los espectadores a suscribirse y activar notificaciones para seguir aprendiendo. Se menciona la presencia en redes sociales y la posibilidad de unirse al programa de miembros del canal en YouTube o de suscriptores en Twitch para colaborar más con la comunidad. Se cierra el video con un mensaje de despedida y se indica que se volverán a ver la siguiente semana.

Mindmap

Keywords

💡Android

Android es un sistema operativo basado en Linux, desarrollado por Google, utilizado principalmente en dispositivos móviles y tabletas. En el video, se refiere al desarrollo de aplicaciones para este sistema operativo, mostrando cómo se trabaja con herramientas como Android Studio para crear interfaces de usuario nativas.

💡Jetpack Compose

Jetpack Compose es un toolkit de UI declarativo para Android, que permite a los desarrolladores crear interfaces de usuario de manera más eficiente y con menos código. En el script, se menciona que se utiliza para construir interfaces de usuario de apps Android nativas, reemplazando viejas prácticas como el uso de XML.

💡Scroll

Scroll se refiere a la capacidad de desplazarse por contenido que excede los límites de la pantalla o componente. En el video, se discute cómo implementar scroll en una columna de componentes para que el usuario pueda ver todo el contenido, incluso aquel que no se muestra inicialmente en la pantalla.

💡LazyColumn

LazyColumn es un componente de Jetpack Compose que se utiliza para renderizar una lista de elementos de manera eficiente. En el script, se menciona para mostrar cómo se pueden dibujar elementos solo cuando están visibles en la pantalla, mejorando el rendimiento y la memoria de la aplicación.

💡Items

Items es una función en Jetpack Compose que se utiliza dentro de LazyColumn para iterar sobre una lista de elementos y renderizar cada uno de ellos en la pantalla. En el video, se utiliza para iterar sobre un listado de mensajes y mostrarlos de manera eficiente.

💡Mensajes

En el contexto del video, los mensajes son elementos de la interfaz de usuario que se representan en la aplicación. Se menciona la creación de un 'data class' llamado 'MainMessage' que agrupa los parámetros de un mensaje, como título y cuerpo, para su representación en la pantalla.

💡MyComponent

MyComponent parece ser un componente personalizado creado en el tutorial, que se utiliza para representar visualmente partes de la interfaz de usuario, como celdas con imágenes y texto. En el script, se trabaja en la adaptación y reutilización de este componente dentro de listados.

💡Estado del Scroll (Scroll State)

El estado del scroll se refiere a la información sobre la posición actual de desplazamiento en una lista o componente que soporta scroll. En el video, se menciona la creación de un 'remember' para el estado del scroll llamado 'scrollState', que es necesario para implementar el comportamiento de scroll vertical.

💡Modificadores (Modifiers)

Los modificadores en Jetpack Compose son funciones que se aplican a los componentes para cambiar su comportamiento o apariencia. En el script, se utiliza el modificador 'verticalScroll' para agregar la funcionalidad de scroll vertical a una columna.

💡Preview

Preview es una característica de Android Studio y Jetpack Compose que permite a los desarrolladores ver una representación visual de los componentes sin necesidad de ejecutar la aplicación completa. En el video, se utiliza para ver y ajustar la apariencia y el comportamiento de los componentes antes de su implementación final.

Highlights

Bienvenidos a la clase de programación móvil, donde aprenderán a trabajar con Jetpack Compose y listas.

Seguidores del canal pueden activar la campanita para recibir actualizaciones de nuevos tutoriales.

Se menciona el uso de un framework que reemplaza las vistas tradicionales en desarrollo de aplicaciones Android nativas.

Se destaca la importancia de entender la clase anterior para comprender los conceptos que se van a explicar.

Se aborda la integración de componentes en una columna para manejar contenido que excede los límites de la pantalla.

Se muestra cómo utilizar la propiedad 'soundSystemWhite' para simular la previsualización de una pantalla completa.

Se aprende a aplicar un scroll a una columna en Jetpack Compose para desplazar elementos que no caben en la pantalla.

Se introduce la creación de un nuevo elemento compuesto llamado 'mainMessage' para representar un listado de mensajes.

Se discute la parametrización del componente 'myText' para que sea más genérico y pueda recibir diferentes textos.

Se crea una 'data class' llamada 'mainMessage' para agrupar los parámetros de título y cuerpo de un mensaje.

Se utiliza 'LazyColumn' en lugar de 'Column' para renderizar de manera eficiente listados de elementos en pantalla.

Se menciona el uso de 'items' para iterar y dibujar cada elemento de una lista dentro de 'LazyColumn'.

Se resalta la ventaja de 'LazyColumn' al consumir menos memoria y proporcionar una navegación más fluida.

Se aprende a crear una constante que referencia un listado de mensajes para su uso en la aplicación.

Se muestra cómo se puede representar visualmente un listado de mensajes en la interfaz de usuario.

Se habla sobre la próxima clase, donde se aprenderá a interactuar con estas listas y responder a eventos de clic.

Se anima a los espectadores a suscribirse y a colaborar con la comunidad a través de las redes sociales y los programas de miembros.

Transcripts

play00:00

hola carmen qué tal estáis bienvenidos a

play00:02

murder continuamos con el curso del

play00:04

compost en esta clase aprenderemos a

play00:06

trabajar con scrolls iv con listas

play00:08

básicamente con contenido que no tiene

play00:10

por qué adaptarse únicamente a la

play00:12

pantalla del dispositivo así que

play00:13

continuemos dándole forma a nuestra app

play00:15

android preparado pues comenzamos a

play00:18

picar

play00:19

bienvenidos a moure dead by price mobile

play00:22

tutoriales de programación y desarrollo

play00:24

de ios y android

play00:27

esta es la tercera clase de nuestro

play00:29

tutorial para aprender para campus desde

play00:30

cero recuerda que lleva campos es la

play00:32

manera más actual que tenemos de

play00:34

construir las interfaces de usuario de

play00:35

apps android nativas un framework que

play00:37

viene a sustituir las vistas que antes

play00:39

crea vamos con xml si te has perdido la

play00:41

clase anterior te la dejo por aquí y

play00:43

recuerda que es necesaria entenderla

play00:45

bien para comprender todo lo que te voy

play00:46

a explicar antes de comenzar recordarte

play00:48

como siempre que si te gustan este tipo

play00:50

de tutoriales la forma más fácil de

play00:51

apoyarme es suscribiéndote al canal y

play00:53

activando la campanita y también

play00:54

recordándote que de lunes a viernes

play00:56

realizó otras misiones en twitch

play00:58

hablando sobre programación y tecnología

play00:59

y por supuesto programando en directo a

play01:01

nuestra app twitter y tampoco te olvides

play01:03

de unirte al disco de la comunidad

play01:05

nuestro servidor de chat donde ya somos

play01:07

más de 3000 programadores y

play01:08

programadores ahora sí volvamos a abrir

play01:10

nuestro proyecto con android studio y

play01:12

continuamos aprendiendo oye para con

play01:14

pons si lo recuerdas en los tutoriales

play01:15

anteriores estuvimos aprendiendo a

play01:17

construir estas celdas simplemente

play01:19

vistas reutilizables en las que hemos

play01:21

aprendido a manejar textos imágenes

play01:23

colores y estilos también disposiciones

play01:25

de elementos y previsualizaciones en

play01:27

modo claro y en modo oscuro como estás

play01:29

viendo aquí lo que haremos en este

play01:30

tutorial es integrar estos componentes

play01:32

dentro de una de forma que ocupe más que

play01:35

los límites de la misma y por lo tanto

play01:37

tengamos que recurrir a scroll oa listas

play01:40

por supuesto dos componentes más que

play01:42

comunes a la hora de diseñar interfaces

play01:44

de usuario cuando nosotros trabajamos

play01:45

con previews lo que vemos es que el

play01:47

contenido se adapta automáticamente al

play01:50

tamaño del mismo al tamaño del

play01:51

componente pero es posible que ya que

play01:53

ramos siempre visualizando cómo queda en

play01:55

una pantalla completa sin necesidad de

play01:57

estar continuamente iniciando el

play01:59

emulador como acabo de hacer yo ahora

play02:01

mismo podemos simular también la

play02:02

previsualización de una pantalla por

play02:04

ejemplo vamos a modificar la preview del

play02:06

modo claro llamando a su propiedad sound

play02:09

sistem wine y pasándole un truco ya

play02:12

vemos lo que ha pasado la

play02:13

previsualización del componente ahora la

play02:15

vemos enmarcada en una pantalla real voy

play02:17

a reducir el zoom y aquí veremos

play02:18

perfectamente cómo queda nuestro

play02:20

componente la propiedad sound sistem

play02:22

white sólo se la hemos creado en la

play02:24

preview del modo claro por lo tanto el

play02:26

modo oscuro lo seguimos viendo como

play02:27

antes si recuerdas my component hacía

play02:29

referencia a este elemento en un

play02:31

elemento fila en el que habíamos pintado

play02:33

una imagen y dos textos vayamos a la

play02:35

preview y hagamos lo siguiente vamos a

play02:37

crear una columna ya sabes que una

play02:39

columna coloca uno encima de otro y

play02:42

vamos a replicar muchas veces el

play02:44

elemento my componente y refrescar la

play02:46

preview al visto lo que pasa el elemento

play02:47

my component empieza a repetirse una

play02:49

serie de veces llegando hasta el final

play02:51

de la pantalla voy a repetir la alguna

play02:53

vez más para que estemos seguro del

play02:55

efecto que te quiero mostrar lo que te

play02:56

quiero enseñar es que aunque sigamos

play02:58

repitiendo parece que se salen de la

play03:00

pantalla y si iniciamos de forma

play03:01

interactiva esta preview veremos el

play03:03

siguiente como en nuestro emulador

play03:05

parece que aunque intentemos hacer

play03:07

scroll no pasa nada la última fila se ha

play03:09

intentado adaptar al tamaño de la

play03:10

pantalla pero no podemos desplazarla por

play03:13

lo tanto nos está visualizando en este

play03:14

dispositivo todos los componentes que

play03:16

hemos pintado como lo podríamos

play03:17

solucionar pues simplemente aplicando un

play03:19

scroll a la columna así nos podríamos

play03:21

desplazar por la pantalla y ver la

play03:23

totalidad de componentes como añadimos

play03:25

un scroll a un componente en jetpack

play03:27

compose es muy fácil con algo que vimos

play03:29

en la clase anterior con los llamados

play03:31

modificadores diremos que queremos

play03:32

añadir un modificador de tipo mody fire

play03:35

como siempre y en concreto vertical

play03:37

scroll el modificador vertical scroll

play03:39

puede recibir diferentes parámetros

play03:40

siendo obligatorio el que hace

play03:42

referencia a su estado así que vamos a

play03:44

crear una constante con la palabra aval

play03:46

llamada scroll state y que sea igual a

play03:49

remember es grande state que hace

play03:51

referencia a una función perteneciente a

play03:53

ye para campos que ya nos proporciona el

play03:55

sistema una implementación por defecto

play03:57

del estado del scroll necesaria para

play03:59

nosotros implementar cualquier scroll

play04:01

vertical iniciamos de nuevo la preview

play04:03

volveremos a ver el emulador pero ahora

play04:05

si hacemos clic en la pantalla y nos

play04:07

desplazamos vemos que existe un scroll

play04:09

que ya nos permite ver todas las filas

play04:10

que habíamos pintado dentro de la

play04:12

columna así nos aseguramos que todos los

play04:14

componentes se van a visualizar y que

play04:15

ninguno queda oculto fuera de los

play04:17

márgenes de la pantalla entendido el

play04:19

concepto de scroll y como repetimos

play04:20

estos elementos pasemos al siguiente

play04:22

concepto el que de verdad nos va a

play04:24

resultar útil para el tipo de elemento

play04:25

que estamos dibujando ya que básicamente

play04:27

lo que estamos pintando aquí es una

play04:29

lista en el que sólo estábamos

play04:30

representando a by componente dentro de

play04:32

la premium y creemos un nuevo elemento

play04:34

compositivo un elemento que va a hacer

play04:36

referencia a un supuesto listado de

play04:38

mensajes así que vamos a crear una

play04:39

función que se llame en maine celtics

play04:41

una función que deberá ser con possible

play04:43

para pintarse como elemento gráfico y

play04:45

que dentro va a llamar alma y compañía

play04:47

si ahora tanto en nuestro on kate como

play04:50

en la preview llamamos a nuestro nuevo

play04:52

elemento y recarga la preview veremos

play04:54

que en realidad no ha cambiado nada ya

play04:55

que simplemente es un nuevo elemento que

play04:57

en global que ya teníamos pero que en

play04:58

realidad no implementa una funcionalidad

play05:00

extra vamos a hacer diferentes

play05:02

modificaciones sobre nuestro código el

play05:04

texto que ahora mismo teníamos escrito

play05:06

dentro de estos elementos vamos a hacer

play05:07

que llegue como parámetro para que el

play05:09

componente my text sea aún más genérico

play05:11

y podamos indicarle por fuera cuál es el

play05:14

texto que queremos mostrar tanto en el

play05:15

título como en el detalle así que a la

play05:17

función my text le van a llegar los

play05:18

parámetros por ejemplo un título de tipo

play05:21

string y otro parámetro que vamos a

play05:23

llamar body también de tipo string y

play05:25

estos son los elementos que vamos a

play05:26

pintar en my text en este momento

play05:29

aparece un error porque cuando llamamos

play05:31

a my text necesita este título y este

play05:33

body así que deberían llegarle estos dos

play05:35

parámetros también hay componentes estos

play05:37

dos parámetros representan un mensaje

play05:39

así que por qué no creamos un objeto que

play05:41

engloba a estos dos parámetros podríamos

play05:43

crear un data class que se llame main

play05:45

message y que tenga dentro los dos

play05:47

parámetros que le pasábamos a my text

play05:48

con este data class esta función podría

play05:50

quedar de una forma más elegante le

play05:52

llegaría a un mensaje de tipo main

play05:54

message y ya no podríamos acceder

play05:55

directamente a título a body tendríamos

play05:57

que acceder a nuestro mensaje

play05:59

edad title y de nuevo a nuestro mensaje

play06:01

y a su propiedad body así ya únicamente

play06:03

le pasamos un parámetro el error que

play06:05

teníamos en my text si no desaparece ya

play06:08

que sigue necesitando que le llegue una

play06:09

propiedad de tipo main st así que vamos

play06:11

a modificar my component para poder

play06:13

enviarle también un mensaje ahora ya sí

play06:15

lo podemos enviar a my texto corregido

play06:17

esto tenemos nuevo error y es que my

play06:19

component también necesita que le llegue

play06:21

un mensaje como he repetido varias veces

play06:23

a lo largo de estas clases ya para

play06:25

compose se basa en la composición en la

play06:27

recomposición y en la reutilización de

play06:29

componentes nuestro componente main

play06:31

mesallés no se va a encargar de pintar

play06:33

únicamente un componente sino de pintar

play06:35

un listado de ellos algo parecido a lo

play06:38

que vimos al principio de esta clase

play06:39

como repetíamos dentro de una columna

play06:41

varias veces my componente así que lo

play06:43

que queremos es que ama y me seguís no

play06:45

le llegue un único mensaje sino que le

play06:47

llegue una lista de mensajes un

play06:49

parámetro que vamos a llamar mes y links

play06:51

y que en vez de ser de tipo main message

play06:53

va a ser una lista una lista es

play06:55

simplemente una colección que tenemos

play06:57

dentro de coaching que va a contener

play06:58

mensajes como hacíamos al principio de

play07:00

la clase para repetir varias veces un

play07:02

mismo componente y pintarlo en pantalla

play07:04

los añadimos todos dentro de una columna

play07:07

cómo funciona la columna en hierba

play07:08

compost una columna siempre va a pintar

play07:10

todos los elementos que tengamos dentro

play07:12

pero quizás esto una lista no tiene

play07:14

sentido ya que si hacemos referencia a

play07:16

las listas podemos estar dibujando en

play07:18

pantalla elementos que no tienen por qué

play07:20

verse ya que pueden quedar fuera de los

play07:21

márgenes de la misma para eso en vez del

play07:23

elemento de hierba compost collum

play07:25

deberemos utilizar el elemento lights

play07:28

incólume place y colom se va a encargar

play07:29

únicamente de dibujar y de renderizar

play07:32

elementos que de verdad sí que se están

play07:34

mostrando dentro de la pantalla los que

play07:36

quedan fuera no se pintarán de esta

play07:37

forma nuestra app estará consumiendo

play07:39

menos memoria y nos desplazaremos por la

play07:41

interfaz de forma más fluida ya que sólo

play07:43

en el momento de visualizarse en los

play07:44

márgenes de la pantalla se va a pintar

play07:46

el componente muy bien ya vemos álex

play07:48

txikón y dentro de este lazy con un

play07:50

tendremos que pintar cada uno de los

play07:52

mensajes para ello podremos sincerarnos

play07:53

utilizando items y pasándole en la lista

play07:56

de mensajes recuerde importar leis ítems

play07:58

para poder trabajar con este elemento

play08:01

dentro de lacy colom tendremos la opción

play08:03

de trabajar con esta operación ítem se

play08:05

va a ejecutar una vez por cada elemento

play08:06

de la lista y de forma inteligente sólo

play08:08

cuando estos elementos se van a acabar

play08:10

viendo la pantalla dentro de nuestra

play08:12

columna dentro d la lista con scroll así

play08:14

que llamemos dentro de esta operación a

play08:16

my component pasando el mensaje que nos

play08:18

está retornando items en cada momento

play08:19

sin necesidad de que nosotros

play08:21

controlemos que se está viendo o que no

play08:22

hecho esto solo tendremos un último

play08:24

error y es que el contenido principal de

play08:26

nuestra aplicación main message necesita

play08:29

que le llegue un listado de mensajes

play08:30

pues simplemente creemos una constante

play08:33

que haga referencia a un listado de

play08:34

mensajes para ello creamos una constante

play08:36

privada que se llame mensajes de tipo

play08:38

list que contiene my message y con listo

play08:41

vamos a ir añadiendo diferentes

play08:43

elementos diferentes elementos de tipo

play08:44

main message que ya sabes que tenían que

play08:46

incluir un título y un cuerpo vamos a

play08:48

cerrar la preview y voy a crear un

play08:50

listado de mensajes básicamente voy a

play08:52

repetir el mismo texto que teníamos

play08:53

inicialmente que era la hierba compose y

play08:56

voy a añadirle un número al final para

play08:58

representar que de verdad es un texto

play09:00

diferente como estás viendo por aquí

play09:01

ahora ya podríamos pasar en la constante

play09:03

en meses jaime sets tanto en el long

play09:06

create de la pantalla como en la preview

play09:08

ya que estamos representando lo mismo si

play09:10

refrescamos la preview veremos lo

play09:12

siguiente como tenemos algo muy parecido

play09:14

a lo que veíamos cuando repetimos el

play09:16

mismo elemento dentro de una columna

play09:18

pero por supuesto con una implementación

play09:19

más ya que si estamos haciendo

play09:21

referencia al mismo elemento lo lógico

play09:23

es emplear un lazy cold haciendo uso de

play09:26

su operación items si iniciamos la

play09:28

preview veremos como nuestra app

play09:30

volvemos a tener scroll un scroll

play09:32

inteligente que solo está pintando estos

play09:34

elementos y que en el momento que nos

play09:35

desplazamos se encarga de pintar los

play09:37

nuevos elementos y de eliminar los que

play09:39

ya no aparecen en pantalla de esta forma

play09:41

ya podremos trabajar con interfaces más

play09:43

complejas y podremos hacer uso de un

play09:45

elemento tan común como son los listados

play09:46

y los scripts imagina que desde base de

play09:48

datos recuperamos un listado de usuarios

play09:50

y con nuestro componente reutilizable

play09:52

seríamos capaces de enviarle ese listado

play09:54

y que se pintara de forma inteligente en

play09:56

la próxima clase vamos a aprender a

play09:57

interactuar con estas listas como

play09:59

podremos hacer clic en cada una de las

play10:01

celdas interpretar ese clic y repintar

play10:03

nuestra interfaz de una forma diferente

play10:05

si de verdad te ha gustado este tutorial

play10:07

ya sabes darle al botón de suscribir y

play10:09

activar la campanita que lleva unos

play10:11

segundos si a mí me ayudas enormemente

play10:13

recuerda que también puedes seguirme en

play10:14

mis redes sociales como arroba moure dev

play10:16

en twitter en instagram y sobre todo en

play10:18

tweets y si aún quieres colaborar más

play10:20

con la comunidad puedes unirte al

play10:21

programa de miembros del canal en

play10:22

youtube o de suscriptores en twitch

play10:24

muchísimas gracias por el apoyo mostrado

play10:26

la semana nos vemos en el vídeo del

play10:28

próximo domingo hasta otra carmen

play10:31

[Música]

play10:44

[Música]

Rate This

5.0 / 5 (0 votes)

Related Tags
Desarrollo de AppsProgramaciónAndroidJetpack ComposeInterfaces de UsuarioScrollsListasTutorialMoureDevComunidad
Do you need a summary in English?