- 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
Desarchivar y Restaurar Tareas en Aplicaciones de Notas
Clase 16 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
En muchas aplicaciones de notas o tareas, es común tener una lista de elementos archivados. Sin embargo, puede surgir la necesidad de recuperar alguno de estos elementos y moverlo de nuevo a la lista principal. Pero, ¿cómo se logra esto? En este artículo, exploraremos cómo modificar el estado de una nota archivada en una aplicación, cambiando su estado a no archivado.
¿Cómo agregar la funcionalidad de desarchivar?
Para empezar a desarchivar una nota, primero debemos identificar el diseño de interfaz donde se encuentra el botón responsable de esta acción. Imaginemos que nuestro elemento archivado tiene dos botones, uno de los cuales cambiará el estado del todo para que deje de estar archivado. El siguiente paso es agregar esta funcionalidad y para ello necesitaremos:
- Acceder al view model de nuestra aplicación.
- Crear o modificar una función que cambie el estado de la nota.
¿Cómo implementar la función unarchiveToDo?
Dentro del view model, la función unarchiveToDo juega un papel esencial. Su tarea es modificar el estado de la nota archivada, regresándola a la lista principal. Vamos a diseccionar su implementación paso a paso:
-
Verificar la existencia de un índice: Necesitamos chequear si el elemento que queremos desarchivar posee un índice dentro de nuestra colección de todos.
val index = todos.indexOfFirst { it.id == todoId } if (index == -1) return -
Modificar el estado del todo: Si el índice es válido, usamos este para acceder al elemento en cuestión y cambiar su propiedad
isArchivedafalse.todos[index].isArchived = false -
Guardar los cambios: Realizamos un
saveDatapara que los cambios se mantengan reflejados al usuario.saveData()
¿Cómo conectamos el botón con la funcionalidad?
Una vez que hemos definido la lógica para cambiar el estado del todo, el siguiente paso crucial es conectar esto con la interfaz de usuario, específicamente el botón que ejecutará esta acción.
- Ubicar y modificar el botón más que se encuentra en el ítem del todo archivado.
- Llamar la función
unarchiveToDopasándole como argumento el identificador de la nota o tarea.
Ejemplo de cómo puede ser la llamada desde el archivo de diseño:
item.binding.btnPlus.setOnClickListener {
viewModel.unarchiveToDo(todoItem)
}
¿Cómo probamos la funcionalidad?
Finalmente, después de haber implementado y conectado nuestra función, es vital probar la aplicación para verificar que funciona como se espera:
- Ejecuta la aplicación.
- Navega a la lista de archivados.
- Desarchiva un elemento y revisa si reaparece en la lista principal.
Con estos pasos, podrás gestionar tus notas o tareas archivadas de manera eficiente, asegurando que todos los elementos sean fácilmente accesibles cuando los necesites. Proceder a implementar este tipo de funcionalidades no solo mejora la experiencia del usuario, sino que también fortalece las habilidades de programación y lógica de quienes desarrollan la aplicación. ¡Adelante y sigue explorando más funciones y posibilidades!