Build your first iOS app with SwiftUI

  • Am Vor 2 Monate

    Paul HudsonPaul Hudson

    Dauer: 2:55:23

    In this livestream I'll show you how to build a complete SwiftUI app from scratch, while also teaching you the basics of Swift. Along the way I'll be answering questions that you might have, and also providing quizzes to help test your learning.
    To follow along, you'll need to install Xcode from the Mac App Store. I'll be using Xcode 12.3, but any version of Xcode after 12.0 should be fine.
    * You can download the finished project source code here: github.com/twostraws/Trekr
    * You can get the assets used in this video from here: www.hackingwithswift.com/samples/first-swiftui-app.zip
    * You can download the free SF Symbols app from Apple here: developer.apple.com/sf-symbols/
    As well as helping absolute beginners learn some SwiftUI, this livestream is also taking place in aid of Julian House - a UK charity that provides support for vulnerable and at-risk individuals. These include men, women and young people experiencing homelessness, women and children escaping domestic abuse, adults with learning difficulties and people who need support after leaving prison.
    You can donate to my fundraising effort here: justgiving.com/fundraising/twostraws

Paul Hudson
Paul Hudson

If you've watched this and decided you want to continue learning SwiftUI, I have great news: I have a 100% free series of tutorials that teach you everything you need to know, including lots of videos, interactive tests, challenges, and more. It's called the 100 Days of SwiftUI, and you can find it here: https://www.hackingwithswift.com/100/swiftui

Vor Monat
gregory allen
gregory allen

Thank you so much for the videos and I gladly appreciate the knowledge. However my flags are lining up in the wrong countries. Anyway I could fix that issue?

Vor Monat
Fernando Campo
Fernando Campo

🙌🏻

Vor 22 Stunden
ReflectingMe
ReflectingMe

Wonderful stuff Paul, thank you. Wondered if you might do something in a future live stream similar to your Guess the Flags game, but in SwiftUI instead?

Vor 22 Stunden
ReflectingMe
ReflectingMe

@Paul Hudson Oh heck! Very sorry Paul, I have missed this. Will take a look now - thank you for getting back to me so quickly too, much appreciated.

Vor 22 Stunden
Paul Hudson
Paul Hudson

I already remade Guess the Flag using SwiftUI, although it wasn't a livestream. Find the articles/videos starting here: https://www.hackingwithswift.com/books/ios-swiftui/guess-the-flag-introduction

Vor 22 Stunden
David
David

“Please! Do not answer in the chat!” *a thousand answers in the chat later* “sigh"

Vor 2 Tage
Hanny Kristian
Hanny Kristian

What requirements mac for being ios dev?

Vor 3 Tage
Robertux DeClercq
Robertux DeClercq

top

Vor 5 Tage
IT information
IT information

https://www.youtube.com/watch?v=WoeuMP_CIs0

Vor 5 Tage
IT information
IT information

https://www.youtube.com/watch?v=WoeuMP_CIs0

Vor 5 Tage
Rukmani Vinay
Rukmani Vinay

Thank you

Vor 7 Tage
Марина Куленкова
Марина Куленкова

Paul, thank you very much! Your video and the course are very helpful!

Vor 8 Tage
Dj Johnson
Dj Johnson

The relieved walk recurrently flash because tsunami additionaly talk upon a pointless net. guiltless, aboard sousaphone

Vor 10 Tage
ADHYAN DUA
ADHYAN DUA

Thanks for the video!

Vor 11 Tage
Michael Jr A Obi
Michael Jr A Obi

var body: some View { List(tips, id: \.text) { tip in if tip.children != nil { Label(tip.text, systemImage: "quote.bubble") .font(.headline) } else { Text(tip.text) } } .navigationTitle("Tips") } } it is citing 'comparing non-optional value type '[Tip]' to nil always returns true.' I need help with that please. Appreciate.

Vor 18 Tage
Michael Jr A Obi
Michael Jr A Obi

Around the “if tip.children!= nil {Label(tip.text, systemImage: ....” it cited that comparing non-optional value of type [Tip] to nil always returns true.

Vor 18 Tage
Michael Jr A Obi
Michael Jr A Obi

It is working. Appreciate.

Vor 18 Tage
Michael Jr A Obi
Michael Jr A Obi

At point of adding, let location: Location, it says, ‘Cannot find Location in scope’

Vor 18 Tage
Juan Mejia
Juan Mejia

I keep getting an error code that says (below) when I try to proceed to 1:52:29.

Vor 19 Tage
Juan Mejia
Juan Mejia

swift.decodingerror.keynotfound(coding keys(stringValue: "hero picture",intValue:nil and multiple others like that... I triple checked all my code. Someone pls help :(

Vor 19 Tage
NonYourBuz
NonYourBuz

where is the "samp" file to go with this project....kinda needed....

Vor 19 Tage
Lalit Yalamanchili
Lalit Yalamanchili

This man is Amazing

Vor 25 Tage
Ann Burgess
Ann Burgess

No problem with people posting quiz answers on the chat window because you went full screen. Writing after quiz 1 - this is just what I was looking for - something to make a bridge from Swift Playgrounds to something rather more practical and useful. Very clearly put across. Thank you!

Vor 28 Tage
Carley Burke
Carley Burke

Hello, can you make a beginners video for turning website into iso app? Xcode 14.2

Vor 28 Tage
Govar zelf
Govar zelf

thank you so much for your help!

Vor Monat
Cogncierge
Cogncierge

What a great human being you are Paul! Thank you.

Vor Monat
PAVUN RAJ
PAVUN RAJ

awesome i loved all videos

Vor Monat
tammim haque
tammim haque

fatal error: Unexpectedly found nil while unwrapping an Optional value. this error is coming from let url = Bundle.main.url(forResources: "locations" , withExtension: "json")!

Vor Monat
tammim haque
tammim haque

@Paul Hudson locations.json this file is already added in my project

Vor Monat
tammim haque
tammim haque

@Paul Hudson no I've downloaded it from your link

Vor Monat
Paul Hudson
Paul Hudson

This means you didn't add the JSON file to your project or target.

Vor Monat
tammim haque
tammim haque

hi

Vor Monat
Raoni Zanovello
Raoni Zanovello

thank god I found this. so much bs and so much shit outdated out there

Vor Monat
Wyld Morris
Wyld Morris

Watching from UK Sound level is fine

Vor Monat
guitarcoey
guitarcoey

Love this video stream! Now I want to do almost the exact same project except that instead of using UIMapkit, I want to put a static "map" (aka a PNG) into a scrollable view and click on an area to go to a content view. Any ideas?

Vor Monat
James Hanly
James Hanly

Thanks for an awesome tute! After compiling I'm getting dyld`getattrlist errors saying unable to simultaneously satisfy constraints. App works but errors persist - what have I done!?

Vor Monat
Paul Hudson
Paul Hudson

You’ve done nothing wrong; that’s an internal Apple error, so nothing you need to worry about.

Vor Monat
Antonio Soto
Antonio Soto

My friend displays sites in Yandex, says some raccoon global is with him like everything is done at once, maybe who knows?

Vor Monat
cookiesup2music
cookiesup2music

Sound issues is (someone brought it up in stream chat) is caused by XCode 12 on Catalina... no real fix other than restarting the CoreAudiod process

Vor Monat
Sarung Mesres Chanel
Sarung Mesres Chanel

I didnt hear the directives Since I was on mute and came off as a jerk after I rewatched this...but that was not my intention.

Vor Monat
Uye Lavy
Uye Lavy

The poor doggie had to suffer and watch dis XD.

Vor Monat
pankaj sharma
pankaj sharma

happy belated birthday !!

Vor Monat
Jason Chandler
Jason Chandler

Did you create the json files we moved over? How did you get all the information into that format?

Vor Monat
Jason Chandler
Jason Chandler

@Paul Hudson So text has to be in json before it can be placed in Xcode? Sorry, I was a little lost with the json files portion. How did they get in that format for use in the App etc.?

Vor Monat
Paul Hudson
Paul Hudson

Yes; I just typed in the text by hand.

Vor Monat
Wasting Time
Wasting Time

Great Stuff from a seemingly great individual. Giving to others as a present to himself.

Vor Monat
Davide Areias
Davide Areias

Today i have finished all my exams soo i decided what a better thing to do than creating my own app. I heard ios app would be easier and funnyer than android, and I also have an iphone. Having a windows pc my self i took 4 hours to install mac os on a VM and then found your amazing video and watch it all, lovethe dogs and your daughter is soo cute. Soon i will create an app like Tinder, but way better and cheaper, TY.

Vor Monat
medichi SWQ
medichi SWQ

Thank you for your interesting and helpful video!)) But there seems to be new Apple bug: in WorldView.swift file NavigationLink does not seem to work. I couldn't find any helpful information, so it would be just great if you'd find a moment and tell if you know anything about possible bug (mb you've met it already?) (misprints are not the option, I copied this file from your repo, project is building and running, no errors except of broken navlinks)

Vor Monat
Alej M-C
Alej M-C

I’m only 30mins in, I couldn’t help but comment right away. Thanks a lot for demystifying Swift like this, the presentation skills are off charts and the way you are handling trolls is top-notch, I really really hope that those rare instances don’t take too much of your energy or deter you from continuing on in the future. Subscribed instantly, now onto resuming the tutorial : ). Reason: some months ago I started using FCPX and Motion, mostly in hobbyist experimental mode (although have already took the risk at times and use those in real things) and realized that plugins for that are made via the FxPlug API which has a Swift template and all... slowly getting to understand Swift first before getting into the rabbit hole (got a bit of a background writing shaders and mostly C# code). EDIT: ok, just finished, jeez gotta get on it and definitely spend more time on it... I still have the feeling of magic is what’s making it work still, as soon as it gets on the MapKit, MapAnnotation, Swift KeyPath, environment objects, etc I kinda lose track of how it works exactly. Would it be safe to say that Swift has a sort of built-in dependency injection support with the environment objects and a sort of query/LINQ style selectors for arrays (with the element ‘in’ syntax)? Nevertheless, mindblown, doing something like this from scratch or ‘by-hand’ would take a whole lot more than 3 hours, these APIs are crazy good in my view.

Vor Monat
Johan S
Johan S

stupid ppl answering in the chat! xoxo

Vor Monat
Saneesh Antony
Saneesh Antony

urlString = Bundle.main.path(forResource: song.trackName, ofType: "mp3")  while I try this... error occurred ; Console:- urlstring is null and when I gave the direct audio file name instead of (song.trackName) it works.. how to solve this issue..?

Vor Monat
Alejandro Heredia
Alejandro Heredia

I just love SwiftUI, so elegant and simple

Vor Monat
Joe Doe
Joe Doe

I going through the Unwrap course. Does someone have the solution to: Write code that reads the “name” key. let details = [“name”: “Sophie”] ] “Unknown” details[ “name” , default: = name let I tried every combination of I could think of. I’m completely stumped. Thanks.

Vor Monat
MrPB3N
MrPB3N

This has finally cleared my confusion about structs, classes, ContentViews, parameters, etc. I always conceptualized structs and classes as these crazy scary things, but your explanation of them as data structures made perfect sense. I was so confused whenever someone in a tutorial made a custom data type, but no longer! I would pay for more walk throughs like these.

Vor Monat
Vincent Adolph
Vincent Adolph

Hello

Vor Monat
Nick Limo
Nick Limo

Hello Paul! Thank you for the video! It is noteworthy that you made this live broadcast on your birthday)) Happy birthday! Happy New Year!

Vor Monat
hi! btn
hi! btn

thank you Paul, and happy birthday :)

Vor Monat
Ron Rolle
Ron Rolle

here it is, my new App 'QR Address'

Vor Monat
Евгений Перевалов
Евгений Перевалов

func thanks(text: String)-> String { return "\(text) for your great work!!!"} thanks("Please take my gratitude")

Vor Monat
Shaobo Yang
Shaobo Yang

Best SwiftUI tutorial ever!

Vor Monat
solutionsagent
solutionsagent

Phenomenal video - I've been trying to learn Swift for a while now and your instruction was just so very clear... you've kicked open the door open for me. Thank you!

Vor Monat
Jane101
Jane101

This video was really helpful, thank you!

Vor 2 Monate
Zheng Cheng
Zheng Cheng

1:09:40 ah I see, in Web development have padding and margin, but in SwiftUI there are only padding(). good to know

Vor 2 Monate
William Allen
William Allen

I think Paul is one of the best know and most respected teachers of Swift and SwiftUI in the English speaking world, as he should be. So not 'terribly underrated.'

Vor 2 Monate
WellWellWell
WellWellWell

Now put 50 views with complex layout into VStack and see amazing performance.

Vor 2 Monate
Ivar VW
Ivar VW

Released by first app and already made a few sales. Coudn't have done it without you Paul. Thanks for all your tutorials!

Vor 2 Monate
David Agyakwa
David Agyakwa

oops mistake it produced later issues ,I now see why the tabview must be at the top

Vor 2 Monate
David Agyakwa
David Agyakwa

I wrote the tabview under the Navigation view and it still works why is that

Vor 2 Monate
Deeb Sanwa
Deeb Sanwa

Sir Paul Hudson, you're an inspiration. I've been watching your tutorials for 2 years now and have learned SwiftUI solely through your videos and website. I'm stunned that you don't have any courses for sale on Udemy. You'd easily outrank the top teachers currently listed for iOS development.

Vor 2 Monate
_r3mote
_r3mote

When setting the NavigationTitle I get a LayoutConstraints warning which says: Unable to simultaneously satisfy constraints. Any suggestions?

Vor 2 Monate
Double-Edged Swordfish
Double-Edged Swordfish

Same here, have you managed to fix this?

Vor Monat
Mark Patterson
Mark Patterson

Thanks for the Christmas present, Paul!

Vor 2 Monate
Dave Baxter
Dave Baxter

I don’t understand why you needed the Environment object. Wouldn’t the created variable be a global anyway or doesn’t swift work like that?

Vor 2 Monate
Blu Yeti Inc
Blu Yeti Inc

Hi Paul, after this tutorial, which videos would you recommend next. Need more practice.

Vor 2 Monate
Apple Developer
Apple Developer

Hi Paul, NavigationLink(destination: ContentView(location: locations)) This not working in Xcode12 giving compile time error and autocomplete feature not showing the same . Am I missing anyrhing ?

Vor 2 Monate
Bryan L
Bryan L

I had the same issue originally - try to copy paste the entire var:body for git.

Vor 2 Monate
Mr.Sojek
Mr.Sojek

I've always thought programmers are people who have almost no private life, much less a family.

Vor 2 Monate
Gary Watson
Gary Watson

Great tutorial and I have learnt more stuff.

Vor 2 Monate
Daz
Daz

I wonder why would someone came and dislike the video, Paul took his time to do Swift beginner a favor. We gained many knowledge from Paul's web too, big thanks to Paul.

Vor 2 Monate
Vincent Pradeilles
Vincent Pradeilles

Asking for a friend: which software did you use to manage your stream? OBS? And did you have issues with MacBook fans "polluting" the sound capture? 🤔

Vor 2 Monate
StuFF mc
StuFF mc

@Vincent Pradeilles It's not only the most amazing software in the world, it's made by my dearest friends the Twins Ken & Glen. They must be the nicest Mac devs on this planet :)

Vor 2 Monate
Vincent Pradeilles
Vincent Pradeilles

@Paul Hudson I didn’t know Ecamm Live! Will check it out, thanks for the answer Paul!

Vor 2 Monate
Paul Hudson
Paul Hudson

I use Ecamm Live, and have a shotgun microphone to reduce noise from my fans 👍

Vor 2 Monate
tinyrunner tiny
tinyrunner tiny

This guy is terribly underrated

Vor 2 Monate
Deeb Sanwa
Deeb Sanwa

@tinyrunner tiny agreed... a true legend.

Vor 2 Monate
tinyrunner tiny
tinyrunner tiny

Look at his subscriber count. He should have millions. His content is great.

Vor 2 Monate
Eustace Bagge
Eustace Bagge

By whom? What do you mean?

Vor 2 Monate
Zheng Cheng
Zheng Cheng

Thanks for the video

Vor 2 Monate
Darren Miller
Darren Miller

This is such an excellent resource for those new to coding! Clearly, your site and YT channel will prove to be key in my journey. ✌🏼🖖🏼

Vor 2 Monate
Temo Kaxniashvili
Temo Kaxniashvili

Mr. Hudson, can you please share your opinion, about why SwiftUI does not provide alternative for UISearchController and UISearchBar?

Vor 2 Monate
Abdullah Alnutayfi
Abdullah Alnutayfi

thank you! but why you did not use @Publeshed for properties in locations class ??

Vor 2 Monate
Abdullah Alnutayfi
Abdullah Alnutayfi

@Paul Hudson thanks for response

Vor 2 Monate
Paul Hudson
Paul Hudson

We don’t need @Published because nothing is changing.

Vor 2 Monate
Abdullah Alnutayfi
Abdullah Alnutayfi

and when we need this Properties just we heave to create @ObservedObject ??

Vor 2 Monate

Nächster

24 Xcode Tips in 15 Minutes

15:30

24 Xcode Tips in 15 Minutes

Paul Hudson

Aufrufe 25 000

SwiftUI Live: Building an app from scratch

2:25:19

Swift Programming Tutorial for Beginners (Full Tutorial)

3:22:45

iOS Tutorial (2020): How To Make Your First App

3:26:33

5 Steps to Better SwiftUI Views

31:19

5 Steps to Better SwiftUI Views

Paul Hudson

Aufrufe 12 000

Anonym angezeigt! Nun gehts los.

12:47

Anonym angezeigt! Nun gehts los.

Mein Fehnhaus, Fiete und Ich

Aufrufe 258 239

My Characters Unbox my Fan Mail!

20:43

My Characters Unbox my Fan Mail!

Kallmekris

Aufrufe 1 776 017

Tech Week: Ty też załóż sobie podcast!

12:14

Tech Week: Ty też załóż sobie podcast!

Kuba Klawiter

Aufrufe 292 894

Bella Poarch I 😠Errrrr!

0:10

Bella Poarch I 😠Errrrr!

Bella Poarch

Aufrufe 421 109

How To Fix a Printer

2:41

How To Fix a Printer

HowToBasic

Aufrufe 1 841 145