Pantalla home: carruseles
Clase 14 de 36 • Curso de Desarrollo de Aplicaciones iOS con SwiftUI
Contenido del curso
- 4

Programando la primera pantalla en módulos
14:27 - 5

Escribiendo la lógica para mostrar dos pantallas
14:05 - 6

Pantalla de inicio de sesión con SecureField y Scroll
17:01 - 7

Completando nuestra pantalla de inicio de sesión
17:33 - 8

Pantalla de registro de usuario
17:42 - 9

Comprobando el funcionamiento de nuestras pantallas
05:31 - 10

Estructura de las pantallas con TabView
13:19 - 11

Creando nuestra pantalla home
14:04 - 12

Pantalla home: logo y barra de búsqueda
13:28 - 13

Pantalla home: programación de interfaces estáticas
15:50 - 14

Pantalla home: carruseles
13:23
¿Cómo programar un módulo de carrusel?
Los carruseles son elementos visuales atractivos y funcionales, pero su programación puede parecer complicada si no se tiene el conocimiento previo. Sin embargo, al desarrollar uno, la creación de otros se vuelve un proceso simple, ya que comparten muchas similitudes. La clave está en entender cómo funcionan el scroll view y las imágenes. Aquí te mostraré cómo iniciar la creación de estos módulos de carrusel.
¿Cómo estructurar el contenido inicial?
Antes de iniciar con los carruseles, primero debes asegurarte de que el contenido previo esté bien definido. Por ejemplo, podrías comenzar añadiendo un título, como "Categorías sugeridas para ti", usando la siguiente propiedad:
Text("CATEGORÍAS SUGERIDAS PARA TI")
.font(.title3)
.foregroundColor(.white)
.bold()
El uso de modificadores como .font, .foregroundColor y .bold ayuda a que el texto se alinee visual y estéticamente con el diseño deseado.
¿Cómo implementar un scroll view horizontal?
Para los carruseles, utilizamos un scroll view horizontal, lo que permite desplazarse de lado a lado. Así es como se implementa:
ScrollView(.horizontal, showsIndicators: false) {
HStack {
// Aquí irán los botones con imágenes
}
}
Este código crea un desplazamiento horizontal sin mostrar los indicadores, proporcionando un aspecto más limpio y centrado.
¿Cómo integrar imágenes dentro del carrusel?
Las imágenes son esenciales para un carrusel. Puedes mostrarlas como botones, lo cual es útil para que los usuarios puedan interactuar con ellas:
Button(action: {
print("Categoría seleccionada")
}) {
ZStack {
RoundedRectangle(cornerRadius: 8)
.fill(Color.blueGray)
.frame(width: 160, height: 90)
Image("FPS") // Nombre de la imagen
.resizable()
.scaledToFit()
.frame(width: 42, height: 42)
}
}
El uso del ZStack permite superponer una imagen sobre una figura geométrica, dando un fondo consistente y atractivo al botón.
¿Cómo añadir múltiples elementos en el carrusel?
Dado que las configuraciones de cada botón son similares, la reutilización del código facilita la adición de nuevos elementos. Simplemente copia y ajusta el siguiente código para cada categoría:
let categories = ["FPS", "RPG", "OpenWorld"]
ForEach(categories, id: \.self) { category in
Button(action: {
print("Categoria: \(category)")
}) {
// Contenido del botón
}
}
La solución más eficiente y elegante es usar un ForEach, iterando un Array de categorías y generando un botón para cada una.
¿Qué necesitas para el siguiente módulo de carrusel?
Para otro módulo como "Recomendados para ti", el procedimiento es similar. Cambia los títulos y usa imágenes de videojuegos:
Text("RECOMENDADOS PARA TI")
.font(.title3)
.foregroundColor(.white)
.bold()
ScrollView(.horizontal, showsIndicators: false) {
HStack {
// Añadir botones de videojuego del mismo modo que categorías
}
}
Conclusión
Con estas instrucciones, podrás crear carruseles dinámicos y estéticamente atractivos en tu aplicación. Los retos siguientes son terminar de pulir estos módulos y aplicar estos conocimientos a otros similares que necesites implementar más adelante.
Recuerda siempre animarte a seguir aprendiendo y cada paso que des en la programación te llevará a dominar esta práctica. ¡Sigue practicando y tu habilidad en programación se fortalecerá!