Swift for Beginners: Create To Do List App (2024)

preview_player
Показать описание
We will be building a simple to do list app in swift for beginners. This app will let us add tasks, view them, and interact with them. We will explain the various aspects of creating the app - including view controllers, models, views, storyboards, passing data between controllers, saving data, and much more.

Code alongside the video with Xcode and a simulator.

iOS Academy offers the #1 course for iOS Development for Beginners. Learn to create iPhone and iPad apps from scratch. Everyone these days has an app idea; learn the important skill of making those apps, make yourself more marketable, change industries to get a different job, and enjoy the ride!

**Timestamps**
0:00 Start
1:50 Set Up Storyboard
4:12 TableView Outlet
13:20 Adding To Do List Entry
21:00 Saving UserDefaults
26:00 Passing Data with Closure
31:00 Getting Saved Data
34:00 Testing To Do List
35:00 Opening Task Details
40:00 Finishing To Do List
41:05 Reviewing Code
44:30 Conclusion

#swift #todolistapp #tutorial
Рекомендации по теме
Комментарии
Автор

I have been stuck on table views and cells for about a week and you are THE FIRST person to explain it to where I understand!! Thank you so much!!

justinjones
Автор

Took me like 5 hours to finish this but i got there in the end.. so much pausing and fixing syntax errors - thanks so much for this resource

RenLemon
Автор

Loving the tutorials, especially the debugging that you don't cut out, since we all experience it, too.
My big complaint is the zooming, it's just out of hand. When coding along, it becomes very difficult to do so when zoomed in so much I can't see the rest of the code, and you rarely do a full screen view. Please just increase the font size, minimize your app dock, and only zoom when totally necessary.
Keep it up!

ATCraiger
Автор

Someone should make you a tutorial on what "beginner" means. The editing/zooming and the pace is just awful if you want to follow along without pausing a million times. The fact that it zooms in just cuts out the whole function and it's very confusing to follow. People don't mind pausing if they could see the block of code worked on in full to study it and understand it.

siriusgaming
Автор

Very Good Tutorial, which I have chosen for young guys in our company. I started programming for iOS in 2008 and i can really tell that having warnings and errors is very common with these IDEs and languages, even for the most skilled iOS programmer out there. So, I find really useful that you didn't cut anything.

fr
Автор

I just found out this channel couple days ago and to be honest, I can't believe you have only this much subscriber. You are talking very clearly and your presentation has a great flow. I have no knowledge about Swift but I can clearly understand what is going on on the screen. Though just a couple of comments I'd like to make. This a video for beginners, so writing the code and quickly switching between windows made me stop the video many times to re-read the code and of course after couple of times it affected the flow of the video. Also, I really liked the idea of leaving the footages of failing and correcting yourself or checking something that you do not know. I believe its fine for such a long/all in one video but on regular, short and all informational videos, this might take beginners, like me, off track. Although, as a beginner to Swift, its nice to see what are the possible failures I'll be facing with, it would also mix my mind when I actually start my projects.
Anyhow, great videos! I hope to see your channel at the top in the future!! Keep up!

BoogleCB
Автор

Excellent, in a well explained manner, getting every thing clear, Thank You.

burhanmunir
Автор

Great tutorial. A bit fast to follow but I was able to keep up with it. I am a beginner in iOS development and it was a very good practice to implement the delete function all by myself so it was good that you didn't show it in the video. :) thank you

bhaveshsaini
Автор

Thank you so much. Really enjoy your style. It’s aimed at just my level too. But why are you making this at 5:30am?!?

knucklesamidge
Автор

Amazing tutorial, you make everything seem so simple, although they aren't..More practice for me until it becomes as easy as it is for you!! I am also waiting for the delete functionality, thank you again.

George-ykxi
Автор

So thankful for good tutorials like this as I am not a coder - just a 50+ gal trying to make an app for the first time!
Got to the end, however, every where there is "tableView" in the code, it generates a Fatal error for making a nil because of implicit unwrapping. I'm completely stumped as this is like Latin to me. Any ideas?

maryannadelman
Автор

Hi, thanks for the video. Did you every finish out the app with the delete function? & updating the array to prevent an empty space in the tableview?

SharinganCrypto
Автор

I followed along step by step, and I was able to add tasks but nothing is show in my main list - where all the tasks should list out. I even had breakpoints set to check if I had made any mistakes but didn't seem so. Count was getting incremented every time I was adding a new task. But the only issue is of displaying. What should I do??

aakashjha
Автор

Amazing thank you! My first workable app, 🤣👍, what if I need a couple more lines to save More info? How can I added it?

reeceyamato
Автор

love this tutorial clear and easy to understand

eunheechoi
Автор

Nice video. I followed along and made my own. Thanks.

DhaneCrowley
Автор

I believe there's something missing with your approach here if you want to implement the Delete functionality.
You said that "Basically nil out the saved to do list entry."

Suppose you add "A", "B" and "C". Count will be 3.
Now if you wish to delete, B, your count will be 2.
So now your UserDefaults looks like

Key: Count
Value: 2

Key: task_1
Value: A

Key: task_2
Value: Nil

Key: task_3
Value: C


When your updateTasks() function will run.
Firstly, the "for loop" will run only twice because Count is 2.

But, for one of the iterations(2nd iteration), it will skip because of the condition
"if let task = UserDefaults().value(forKey: "task_\(i+1)") as? String"
Because we have to remember here, task_2 is Nil.

Naturally, it will skip out task_3 because that would be for the 3rd iteration, but the for loop's condition is i < Count(2)

So your list will only look like
A
Nil
Nil

@iOS Academy

leavedrakealone
Автор

Can you do a follow up on the delete function please? Thank you in advance

therealslynx
Автор

The tutorials are very very helpful. In this video whenever I am trying to save I am getting this error:
Thread 1: breakpoint 1.1

Please could you explain what this error is? It would be of great help.

Thank you

abdullahkidwai
Автор

Great video but!!! did you forget to make follow up for deleting item?

jurabekismatov