Tutorial SwiftUI Español - Crea Tu Primera App de iOS
Summary
TLDREn este tutorial en español, Ale muestra cómo crear una aplicación de iOS para guardar y eliminar pendientes utilizando Swift. Se inicia creando un proyecto, definiendo variables y estructuras para mantener el estado de la aplicación. Luego, se construye la interfaz con un Navigation View y un Stack Vertical, añadiendo una lista de pendientes y un botón para agregar nuevos elementos. Se implementa la funcionalidad para agregar y borrar pendientes, y se utiliza UserDefaults para guardar y recuperar los datos. El video termina con la capacidad de persistir los cambios y una invitación a suscribirse para más contenido.
Takeaways
- 😀 Crear una aplicación iOS para guardar y eliminar pendientes utilizando Swift.
- 🛠 Iniciar un nuevo proyecto en Xcode, seleccionando Swift como lenguaje y SwiftUI como interfaz.
- 📝 Definir variables: una para el pendiente actual (un string vacío) y otra para la lista de pendientes (estructura personalizada).
- 🔑 Crear una estructura personalizada 'ToDoItem' que implemente el protocolo Identifiable para representar un pendiente.
- 📱 Diseñar la interfaz con un NavigationView y un VStack, incluyendo una lista de pendientes y elementos para agregar nuevos pendientes.
- ✍️ Agregar un TextField para escribir nuevos pendientes y un botón para agregarlos a la lista.
- 🔑 Utilizar UserDefaults para guardar la lista de pendientes en el dispositivo, implementando el protocolo Codable.
- 📚 Escribir funciones para guardar ('saveToDos') y leer ('loadToDos') los pendientes desde UserDefaults.
- 🔄 Asegurar que los pendientes se mantengan al reiniciar la aplicación mediante la lectura de los datos al inicio.
- 🗑️ Implementar la funcionalidad para borrar pendientes de la lista y actualizar la base de datos después de la eliminación.
- 📈 Concluir el tutorial con una aplicación funcional que permite agregar, guardar, leer y borrar pendientes.
Q & A
¿Qué aplicación se va a crear en el tutorial?
-Se va a crear una aplicación de iOS que permite guardar pendientes y eliminarlos cuando estén listos.
¿Qué lenguaje de programación se utiliza en este tutorial para desarrollar la aplicación?
-El lenguaje de programación utilizado es Swift.
¿Qué interfaz de usuario se selecciona para el proyecto en el tutorial?
-Se selecciona 'Swift UI' como interfaz de usuario para el proyecto.
¿Cuáles son las dos variables principales que se crean al inicio del proyecto?
-Las dos variables principales son 'newTodo' para guardar el pendiente que se está agregando y una lista para guardar todos los pendientes.
¿Qué estructura se crea para representar un pendiente en la aplicación?
-Se crea una estructura llamada 'TodoItem' que implementa el protocolo Identifiable para representar un pendiente.
¿Cómo se agregan los pendientes a la lista en la interfaz de la aplicación?
-Se utiliza un 'List' en Swift UI y se agregan elementos de texto para cada pendiente utilizando un 'ForEach' en la lista.
¿Cómo se implementa la funcionalidad para agregar un nuevo pendiente a la lista desde un campo de texto y un botón?
-Se implementa una acción en el botón que toma el texto del campo de texto, lo convierte en un nuevo 'TodoItem' y lo agrega a la lista de pendientes.
¿Qué es 'UserDefaults' y cómo se utiliza en el tutorial para guardar los pendientes?
-UserDefaults es una base de datos de clave-valor para guardar información en el dispositivo. Se utiliza para guardar y leer la lista de pendientes en la aplicación.
¿Cómo se asegura que los pendientes se guarden y se lean de 'UserDefaults'?
-Se implementan dos funciones: una para guardar los pendientes ('saveTodos') y otra para leerlos ('loadTodos') de 'UserDefaults'.
¿Cómo se permite la eliminación de pendientes de la lista en la aplicación?
-Se utiliza un 'onTapGesture' en cada elemento de la lista que llama a una función para eliminar el pendiente seleccionado y actualizar la base de datos.
¿Cómo se actualiza la interfaz de la aplicación para mostrar los pendientes leídos de 'UserDefaults'?
-Se llama a la función 'loadTodos' cuando se abre la aplicación para actualizar la lista de pendientes mostrada.
Outlines
📱 Creación de una aplicación de iOS con Swift
En este primer párrafo se presenta el objetivo del video: enseñar a crear una aplicación de iOS que permita guardar y eliminar pendientes. Se inicia creando un proyecto nuevo en Swift y se selecciona la interfaz de usuario con 'Swift UI'. Seguidamente, se agregan dos variables: una para el pendiente que se está agregando ('newTodo') y otra para la lista de pendientes ('todos'), la cual es una lista de una estructura personalizada llamada 'TodoItem' que implementa el protocolo 'Identifiable'.
🖋️ Agregar interfaz y funcionalidades
El segundo párrafo se enfoca en el desarrollo de la interfaz de la aplicación y la adición de funcionalidades. Se agrega un título para la aplicación y se implementan un campo de texto y un botón para añadir nuevos pendientes a la lista. Se utiliza un 'NavigationView' y se añade un 'TextField' con un estilo personalizado. El botón, por ahora, tiene una acción vacía que será completada más adelante para agregar nuevos pendientes a la lista.
💾 Almacenamiento de datos con UserDefaults
En el tercer párrafo, se discute cómo guardar los pendientes en 'UserDefaults', una base de datos de clave-valor para dispositivos iOS. Se crea una función para guardar la lista de pendientes y otra para leerlos cuando la aplicación se abre. Se implementa el protocolo 'Codable' para permitir la serialización y deserialización de los objetos 'TodoItem'. Se explica cómo llamar a estas funciones para guardar y recuperar los pendientes de 'UserDefaults'.
✅ Borrado de pendientes y finalización del tutorial
El último párrafo cubre la funcionalidad de borrado de pendientes y la finalización del tutorial. Se agrega la capacidad de borrar un pendiente utilizando un 'ForEach' con una función que toma un índice y lo utiliza para eliminar el elemento correspondiente de la lista. También se actualiza la base de datos para reflejar los cambios. Finalmente, se invita a los espectadores a suscribirse para más tutoriales y se agradece su tiempo, asegurando que habrá más contenido en un futuro cercano.
Mindmap
Keywords
💡Swift
💡Proyecto nuevo
💡Interface de usuario
💡Estructura
💡Identifiable
💡Lista
💡TextField
💡Botón
💡UserDefaults
💡Codificar
💡Eliminar
Highlights
Tutorial de creación de una aplicación iOS para guardar y eliminar pendientes.
Uso de Swift y la interfaz de usuario Swift UI para el desarrollo de la aplicación.
Creación de un proyecto nuevo y configuración del nombre y lenguaje.
Definición de variables para el estado de la aplicación: 'newTodo' y una lista para los pendientes.
Creación de una estructura 'TodoItem' que implementa el protocolo Identifiable.
Implementación de una lista para mostrar los pendientes en la aplicación.
Integración de un campo de texto y un botón para agregar nuevos pendientes.
Uso de una vista Navigation para estructurar la interfaz de la aplicación.
Adición de un título para la aplicación y estilos para el campo de texto y el botón.
Implementación de la acción del botón para agregar nuevos pendientes a la lista.
Verificación de que el texto del campo no está vacío antes de agregar un pendiente.
Uso de UserDefaults para guardar los pendientes en la base de datos del dispositivo.
Conformidad del modelo 'TodoItem' al protocolo Codable para su almacenamiento en UserDefaults.
Definición de funciones para guardar y leer los pendientes de UserDefaults.
Actualización de la lista de pendientes al abrir la aplicación para mostrar los guardados.
Implementación de la funcionalidad para borrar pendientes de la lista.
Actualización de UserDefaults después de borrar un pendiente para mantener la sincronización.
Prueba de funcionalidad completa de la aplicación, incluyendo agregar, guardar, leer y borrar pendientes.
Conclusión del tutorial y llamado a suscribirse para más contenido.
Transcripts
hola me llamo ale y en este vídeo les
mostraré cómo crear su primera
aplicación de ios utilizando swift y hoy
vamos a crear una aplicación como ésta
en donde puedes guardar tus pendientes y
eliminarlos cuando estén listos vamos a
empezar creando un proyecto nuevo e next
code
seleccionando zinc obvio
le podemos dar un nombre a nuestro
proyecto en este caso yo lo voy a poner
pendientes
y tienes que asegurarte de que tengas
seleccionado swift como el lenguaje y
swift white como yoshio interface
en el archivo llamado content view es
donde vamos a estar escribiendo el
código para nuestra aplicación bueno
primero vamos a agregar dos variables
que nos van a ayudar a mantener el
estado de nuestra aplicación
necesitamos una variable para guardar el
pendiente que se está agregando entonces
utilizamos el signo de at&t
driver park le podemos llamar por
ejemplo new youtube
y esto sólo va a ser un string vacío
necesitamos crear también una lista
dónde vamos a guardar todos los
pendientes y bueno antes de que queremos
esta lista lo primero que vamos a hacer
es definir nuestra propia estructura que
va a representar un pendiente
le podemos llamar youtube aire y tenemos
que encargarnos de que nuestra
estructura estructura sea identificable
y para esto nos vamos a conformar el
protocolo de ha identifi
para que un elemento sea identificable
tenemos que proporcionar un haití en
este caso podemos utilizar
yuyu haití
y también vamos a guardar pues el
pendiente en sí no entonces en este caso
puede ser un string vamos a llamarle
estudio
sting
ok entonces ahora si podemos definir
nuestra lista
bueno
aquí van a estar todos los pendientes
y esta va a ser una lista de la
estructura del aire
y bueno inicialmente va a estar vacía
ok
ya que tenemos estas dos variables vamos
a empezar a crear la interfaz de nuestra
aplicación todos los elementos van a
estar primero en un navigation view
entonces podemos quitar el text y
aumentar aquí navigation
yo
además de un navigation vamos a utilizar
un stack
vertical en este caso vamos a usar vista
un swift y bay
y primero vamos a agregar la lista de
pendientes y lo vamos a hacer de la
siguiente manera vamos a utilizar list
y adentro de louis vamos a crear texto
para cada uno de los pendientes for each
por cada pendiente
vamos a agregar la estructura de texto
ok vamos a intentar correr nuestra
aplicación y bueno ahorita nuestra lista
de pendientes está vacía
entonces si corremos la aplicación pues
muy probablemente vamos a ver una lista
vacía
no pueden ver nuestra lista está vacía
entonces ahorita vamos a aumentar en un
campo de texto en donde tú podés
escribir el pendiente y un botón donde
bueno puedes apretar y va agregar el
pendiente a la lista si también le vamos
a dar un título de nuestra aplicación
para que muestre la palabra pendiente
está aquí arriba
primero vamos a agregar el título porque
eso es muy simple lo que vamos a hacer
es trabajo de nuestra vista que vamos a
utilizar una visión bartz iron y le
podemos dar un título como por ejemplo
dependientes
ahora vamos a agregar el campo de texto
que vas a utilizar para escribir un
nuevo pendiente y el botón que puedes
apretar para aumentar este pendiente a
la lista estos dos elementos van a estar
adentro de un estado horizontal o un
estat entonces vamos a aumentarlo antes
de nuestra lista
y primero vamos a poner el campo de
texto que es un text field en suite
el título puede ser
a gritar pendiente
y el texto es un buy-in y ya definimos
arriba youtube que es el pendiente que
está siendo agregado y para
proporcionarlo como un painting vamos a
utilizar el signo de dólar
y otro
ya podemos ver aquí el campo y vamos a
darle estilo de brawn de borders para
que tenga las esquinas
circulares entonces textil de style
ground del poder extra
también vamos a agregar un poco de
espacio alrededor de nuestro stack
horizontal utilizando sparring
y ahora adentro destacó horizontal vamos
a agregar el botón con que puedes
agregar un pendiente a la lista esto va
a ser con
por ahora podemos dejar la acción vacía
y ahorita ahora vamos a completar
primero vamos a poner el contenido del
botón
y esto va a ser una imagen image
utilizando una imagen del sistema system
name
iba a ser un signo de más que se llama
todos
vamos a poner
un poco de espacio antes de nuestro
botón o bueno entre nuestro botón y
y el campo de texto utilizando reading
5
ahora vamos a implementar la acción de
nuestro botón que va a ser que se
agregue un pendiente nuevo a la lista lo
primero que vamos a hacer es leer el
texto del campo y crear un nuevo wire en
y por último agregarlo a la lista
entonces primero nos tenemos que
encargar de que el texto no esté vacío y
eso lo podemos hacer con cars north
sefton new traductor y sepsi y si si
está vacío pues lo único queremos que
queremos hacer es regresar ya no
queremos hacer nada
ahora sí ya verificamos que este texto
no está vacío entonces podemos agregar
un nuevo aire o un nuevo aire para la
lista de autor
observé por append y vamos a crear un
nuevo youtube iron
y él tuvo a ser el texto que está en el
campo youtube
por último vamos a recitar el texto en
el campo
un texto vacío
ok entonces vamos a correr nuestra
aplicación y vamos a verificar que
podamos agregar nuevos elementos o
nuevos pendientes a nuestra lista
podemos escribir un pendiente
comprender
swift y babe
a seguir
e instagram
ok entonces como pueden ver están
agregados los elementos a la lista pero
hay un problema si cerramos la
aplicación y la volvemos a abrir no
vamos a ver los pendientes y esto es
porque no estamos guardando los
pendientes
en una base de datos
entonces
ah yo es no sabe que ya habíamos
aumentado pendientes antes que queremos
mostrar en la aplicación
lo que vamos a hacer es utilizar you say
default y ahí es dónde vamos a guardar
nuestros pendientes y luego les vamos a
leer de la base de datos cuando el
usuario abra la aplicación yo soy
default es una base de datos que podemos
utilizar para guardar información en el
iphone o en cualquier dispositivo que
estés utilizando y tiene una estructura
de clave valor entonces tú proporciones
una clave en donde quieres que se guarde
un valor específico y si quiero y si
luego quieres leer ese valor pues
utiliza es la misma clave para leerlo de
la base de datos para utilizar yo soy
default lo primero que tenemos que hacer
es decirle al sistema que nuestro uairén
puede ser modificado y también puede ser
decodificado
de la base de datos y para hacer eso lo
que tenemos que hacer es conformarnos al
protocolo de cobramos
y así es como el sistema va a entender
que nuestro aire puede ser que guardado
en el default
ahora para utilizar yo soy default vamos
a primero definir una función que vamos
a llamar para guardar los pendientes
entonces vamos a definir esta función
private bank
62
y aquí es donde vamos a guardar nuestra
lista de objetos primero vamos a definir
la clave que vamos a utilizar para
guardarla
rey bots
todos aquí y sólo es un swing le podemos
llamar todos
ahora vamos a utilizar esta clave para
guardar la lista
yo soy default y lo que vamos a hacer
primero es llamar user default dot
standard y vamos a utilizar la función
de sets
vamos a darle un valor y una clave
primero vamos a poner aquí la clave y ya
la definimos como su dios aquí y ahora
para el valor lo que tenemos que hacer
es modificar nuestra lista de aire mis y
para codificar lo podemos utilizar algo
que se llama un property tourist en
courel entonces vamos a intentar
codificar la información con un propio
tourist en cobre
llamando la función de en code y lo que
queremos codificar es nuestra lista de
pendientes
entonces el citado autobús
perfecto ya tenemos nuestra función y
ahora la tenemos que llamar para que se
guarden los pendientes y cuando queremos
llamar esta función pues la queremos
llamar cada vez que aumentes un
pendiente nuevo a la lista entonces en
la acción del botón lo que tenemos que
hacer es aumentar self
2
y estamos guardando los pendientes ahora
también queremos definir una función que
lea los pendientes de la base de datos y
los muestre en la aplicación cuando el
usuario lo abra para esto vamos a
definir una función nueva private found
love you's
y aquí vamos a hacer lo contrario a lo
que hicimos en safe vamos a leer la
lista de toulouse y asignar la a la
lista que el usuario ve cuando leemos
información de yo soy default que
habíamos codificado antes le vamos a
leer primero como datos o era en swift
entonces vamos a intentar leer esta
información de yo soy default
utilizando la función de value y tenemos
que dar la clave que es su dios
como les dije antes esto va a ser
primero datos o sera
si logramos obtener estos datos ahora sí
podemos convertir la información a una
lista de todo irons y en vez de utilizar
un encore vamos a utilizar aquí un disco
para decodificar la información entonces
vamos a intentarlo
creando un proyectil ist de cobre
y qué queremos decodificar bueno
queremos decodificar esta información de
usera
y cuál es el tipo de esta información
del tipo es una lista de uairén o un rey
de youtube aire
y entonces ahora lo que tenemos que
hacer es asignar la lista que el usuario
ve que sea igual a esta lista que
acabamos de leer de la base de datos
entonces vamos a llamar self con sus
hijos
louis
ahora vamos a utilizar esta función
cuando la aplicación sea abierta y para
esto vamos a utilizar un lápiz y vamos a
llamar un lápiz en nuestro navigation
view
con a peer queremos cargar los
pendientes de nuestra base de datos
utilizando los sitios
porque vamos a correr nuestra aplicación
y vamos a verificar que sirva nuestra
base de datos
vamos a intentar agregar los pendientes
aprender se exhiba
seguir a apps
ok ahora vamos a cerrar por completo
nuestra aplicación y cuando lo volvamos
a abrir debemos ver esos pendientes en
la lista porque los vamos a haber leído
de la base de datos
perfecto una cosa más que vamos a hacer
ahora es aumentar la habilidad de poder
borrar los pendientes una vez que estén
terminados
para borrar un elemento vamos a utilizar
un dígito en nuestro foro
y como pueden ver el parámetro de
conduit es una función que tiene un link
de excel entonces vamos a definir esta
función aquí abajo
vamos a llamar vida soy dios
y hay que agregar el parámetro del indec
set
le podemos llamar
ok sets
de tipo index es lo que va a ser nuestra
función es agarrar nuestra lista de
autobús y borrar este elemento entonces
vamos a hacer se otro autobús todo
-
a los sets
y vamos a pasar los boxers
por último cuando borramos un elemento
de la lista que el usuario está viendo
también queremos encargarnos de que
nuestra base de datos esté actualizada
entonces podemos solo llamar la función
de 6-3
ok ahora vamos a llamar a su dios
cada vez que el usuario decida borrar un
pendiente arriba en un tuit
3
ok vamos a intentar correr la aplicación
bueno si borramos un pendiente se debe
ir de la lista
y si cerramos completamente nuestra
aplicación luego la volvemos a abrir
vemos que el pendiente no está en la
lista porque actualizamos nuestra base
de datos
bueno eso fue todo lo que les quería
mostrar en este tutorial espero que
hayan disfrutado aprender cómo hacer su
propia aplicación de ios utilizando shui
wai suscriban se si quieren aprender más
porque estaré subiendo nuevos vídeos muy
pronto gracias
浏览更多相关视频
7. Botones Personalizados - Programar aplicaciones iOS - Curso de Xcode
Curso de Android con Java: Control Spinner con una lista de String
ESP32 FIREBASE 4 (APP INVENTOR)
17. Tutorial Xcode: Reproducir sonido con un botón
12. Crear un AlertView - Curso de Xcode para programar aplicaciones iOS
[MOOC] - Apps para dispositivos móviles (ed. 2016) - iOS. Desarrollo de una App
5.0 / 5 (0 votes)