- 1

Implementación de MVVM en Swift: Organiza y Optimiza tus Apps
01:53 - 2

Patrones de Arquitectura y Diseño en Desarrollo de Software iOS
10:34 - 3

Arquitectura MVC y MVP en Desarrollo iOS
06:29 - 4

Principios SOLID en Desarrollo de Software
03:56 - 5

Arquitectura MVVM en iOS: Principios Solid y Swift UI
05:59 quiz de Introducción al Patrón MVVM
Listar y Detallar Notas en Aplicaciones de Tareas
Clase 13 de 28 • Curso de Patrones MVVM en iOS
Contenido del curso
- 6

Proyecto MVVM en Swift: Buenas Prácticas y Configuración Inicial
07:27 - 7

Modelo de Datos en MVVM: Creación de la Estructura Ítem en XCode
05:41 - 8

Creación de Modelo de Datos con Core Data en Xcode
07:47 - 9

Creación de Vistas en Xcode para Aplicaciones MVVM
06:13 - 10

Creación de View Models con Combine en Swift para Aplicaciones Reactivas
23:12 quiz de Estructura de un Proyecto con MVVM
- 11

Crear función "add todo" en arquitectura MVVM con Core Data
19:48 - 12

Funcionalidades básicas para gestionar tareas en SwiftUI
14:30 - 13

Listar y Detallar Notas en Aplicaciones de Tareas
22:35 - 14

Implementación de Funcionalidad de Edición en Aplicación de Tareas
13:42 - 15

Archivar Todos en Aplicación de Tareas
15:29 - 16

Desarchivar y Restaurar Tareas en Aplicaciones de Notas
03:26 - 17

Eliminar tareas en una aplicación de gestión de pendientes
04:15 - 18

Implementación de Estado de Tarea en Aplicación de Tareas
20:51 - 19

Creación de Vistas Amigables en SwiftUI para Aplicaciones de Tareas
19:52 quiz de Operaciones CRUD en un proyecto con MVVM
- 20

Implementación de Clean Architecture paso a paso
05:52 - 21

Estructura y Ventajas de la Clean Architecture
03:47 - 22

Estructura de Proyectos con Clean Architecture y The MovieDB API
06:01 - 23

Mapeo de JSON a Objetos Swift para TV Shows Populares
09:11 - 24

Conexión a API y Manejo de Datos en Xcode usando Clean Architecture
30:54 - 25

Casos de Uso en la Capa de Dominio para Aplicaciones de TV
09:35 - 26

Creación de la Capa de Presentación en SwiftUI con MVVM y Clean Architecture
15:38 - 27

Navegación en SwiftUI: Implementación de Detail View y ViewModel
21:54 quiz de Clean Architecture
La gestión y visualización de datos en una aplicación es una función fundamental que puede mejorar significativamente la experiencia del usuario. A través de este contenido, aprenderás cómo gestionar y mostrar listas de notas o tareas en una aplicación desarrollada en Swift. Explicaremos cómo listar y filtrar elementos, manipular vistas, y aplicar transiciones visuales para mejorar la interfaz.
¿Cómo gestionar las vistas para mostrar y filtrar notas?
Para empezar a trabajar con las notas en tu aplicación, es esencial manejar las vistas adecuadamente. Esto implica no solo agregar y almacenar datos, sino también controlar su visualización. Utilizar un ViewModel es clave ya que actúa como intermediario entre las vistas y la lógica de negocio.
- Agregar una referencia al ViewModel:
-
- En el archivo
ToDoList, creamos una variableviewModelde tipoToDoViewModel.
- En el archivo
@EnvironmentObject var viewModel: ToDoViewModel
- Definir variables de estado:
-
- Definimos variables como
showSheetpara mostrar la pantalla de adición de nuevas notas, ytoDoPreviewpara manejar la vista previa de una nota.
- Definimos variables como
- Filtrar tareas no archivadas:
-
- Creamos una función para filtrar las tareas no archivadas utilizando el método
filter.
- Creamos una función para filtrar las tareas no archivadas utilizando el método
private var unarchivedToDos: [ToDoEntity] {
viewModel.toDos.filter { !$0.isArchived }
}
¿Cómo estructurar la visualización usando LazyVGrid?
La disposición de los elementos en una grilla hace que la visualización de las notas sea clara y accesible. SwiftUI proporciona herramientas para que puedas estructurarlas eficazmente.
- Uso de LazyVGrid:
-
- Creamos una grilla con columnas definidas previamente, usando
LazyVGrid.
- Creamos una grilla con columnas definidas previamente, usando
LazyVGrid(columns: columns, spacing: 8) {
ForEach(unarchivedToDos) { toDo in
ToDoItemView(toDo: toDo)
}
}.padding(.horizontal)
- ForEach para iterar elementos:
-
- Utilizamos
ForEachsobreunarchivedToDospara iterar y mostrar cada nota.
- Utilizamos
¿Cómo implementar interactividad en las vistas?
La interactividad en las aplicaciones es esencial para una experiencia de usuario enriquecida. Veamos cómo implementar estas funcionalidades.
- Gestos en Swift: uso de onTapGesture:
-
- Implementamos el gesto
onTapGestureen cada elemento de la lista para permitir una vista previa o detalles de las notas.
- Implementamos el gesto
.onTapGesture {
toDoPreview = toDo
}
- Mostrar detalles con overlays:
-
- Usamos un overlay para superponer una vista de detalle cuando una nota es seleccionada.
.overlay(
if toDoPreview != nil {
ToDoPreviewView(toDo: toDoPreview!)
.transition(.opacity)
}
)
¿Cómo crear vistas detalladas con ToDoPreviewView?
Las vistas detalladas ofrecen información más profunda sobre cada nota. Aquí está cómo estructurarlas para que sean efectivas.
- Definición del ToDoPreviewView:
-
- Esta vista muestra detalles de una nota específica, con capacidad para modificar su estado.
struct ToDoPreviewView: View {
@Binding var toDo: ToDoEntity
var body: some View {
if let validToDo = toDo {
VStack {
Text(validToDo.title)
Text(validToDo.description ?? "")
}
} else {
EmptyView()
}
}
}
- Validación de datos:
-
- Nos aseguramos de que al cargar la vista, disponga de un
ToDoválido antes de presentarla.
- Nos aseguramos de que al cargar la vista, disponga de un
- Cierres y transiciones:
-
- Se emplean toques en zonas vacías para cerrar vistas, mejorando así la navegación.
.background(Rectangle().opacity(0.01)
.onTapGesture {
toDo = nil
})
Estas implementaciones, aunque parecen simples, mejoran la funcionalidad y usabilidad de una aplicación. Continua explorando SwiftUI para desarrollar características más robustas en tus aplicaciones. Cada paso de código y diseño es una oportunidad para aprender y mejorar tus habilidades de desarrollo. ¡Sigue adelante y sigue practicando!