How to use @Binding property wrapper in SwiftUI | Bootcamp #22

  Переглядів 31,782

Swiftful Thinking

Swiftful Thinking

3 роки тому

The @Binding property wrapper helps us to connect a @State variable between the parent view and a child or secondary view. This is useful for any situation when we want to update a parent view from within the child view. In this video, you will understand the difference between the two property wrappers and when to implement each.
Next video: • How to use if-else and...
Last video: • How to Extract Subview...

КОМЕНТАРІ: 78
@pitmanra
@pitmanra 3 роки тому
Thanks for actually mapping out in the code how @State and @Binding work. No apologies needed. Some sites don't explain these things very well.
@dereklei1746
@dereklei1746 Рік тому
This bootcamp is so well structured that it serves well as a standalone course and a complimentary course and a reference handbook all at the same time. Thanks for such beautiful effort.
@SwiftfulThinking
@SwiftfulThinking Рік тому
Thanks Derek! All of my playlists are structured like this 🚀🚀
@AllanZhang16
@AllanZhang16 5 місяців тому
I watched many SwiftUI videos, and this is the best explanation of @Binding I have seen
@mihneagane9567
@mihneagane9567 Рік тому
Thank you so much for this course! Wish Apple would be as passionate as you to make their tutorials this clear!
@Filwoj00
@Filwoj00 2 роки тому
This course is so damn good. Thank You!!!
@Seepho
@Seepho 2 роки тому
Totally agree!
@leneil46
@leneil46 Рік тому
Yes. He’s good!
@jameskayten6563
@jameskayten6563 7 місяців тому
I really liked this one!! Great job for clarity. And BTW - there's no need to apologize for the content being so beginner level - that's why we're here!
@SokKanharith
@SokKanharith Рік тому
I can't thank you enough for this series.
@muzammilali3222
@muzammilali3222 Рік тому
Binding explained in a really good way. Thanks !
@martinjonesdh
@martinjonesdh 2 роки тому
Your explanations are fantastic. Such good content to allow people to learn. Thanks Martin
@xinl370
@xinl370 8 місяців тому
Super helpful videos! Really like the flow from video 19 to 22 (@State, extracting views, subviews, and then @Binding)
@CC-gh6xt
@CC-gh6xt 5 місяців тому
Don't you ever be sorry Nick! This is great learning for noobs like me. You explain it so good Thank you!
@phillooby7241
@phillooby7241 Рік тому
Thanks Nick. Great job explaining @Binding. I finally understand this
@udonthavasoul
@udonthavasoul 2 роки тому
You are the best. Thank you so much for doing this
@gccount
@gccount 2 місяці тому
The video explains so clear yet efficient. Apple should hire you as an engineer , to promote Swift and SwiftUI.
@yuchen3587
@yuchen3587 2 роки тому
Crystal clear!
@thelambsauce2015
@thelambsauce2015 2 роки тому
Very informative video, thank you so much for this!
@pearl4102
@pearl4102 2 роки тому
You are Genius at teaching thank you so much
@huanzhouwang2871
@huanzhouwang2871 Рік тому
super super clear!! I love it
@user-fv3bb2bz5n
@user-fv3bb2bz5n 10 місяців тому
This playlist is really helpful. Thank you for making.🤗
@abugslife2461
@abugslife2461 2 роки тому
love it! thank you so much, very helpful!
@vignaanjunior382
@vignaanjunior382 3 місяці тому
No need to apologize , even it's basic , it's important , Good Work !
@JeckyKA
@JeckyKA 2 роки тому
very very useful! thank you so much!
@TheSociate
@TheSociate Рік тому
I loved your bootcamp! if it didn't exist it would be harder to for me to get to know swiftui as an absolute beginner
@oldschool84
@oldschool84 3 місяці тому
Well explained! Thanks!
@NTuneLabs
@NTuneLabs 2 роки тому
Super Beginner? Yes, that's me... thank you for this series.
@user-kn6fg4yv2w
@user-kn6fg4yv2w 8 місяців тому
THANK U, you make difference
@sabyasachisahu6730
@sabyasachisahu6730 Місяць тому
Thank you so much man, for making this simple. I was stuck how to transfer text string between views. This really helped me understand teh concept.
@raymundoortiz7269
@raymundoortiz7269 2 роки тому
Very good!!!!, leaving the variables with the same name is the correct way, but for this tutorial and to understand it correctly, I think it is better to change the names, greetings!
@thanghoangngoc2564
@thanghoangngoc2564 2 роки тому
Thank you!
@user-lj3cw2yq3f
@user-lj3cw2yq3f 7 місяців тому
🔥🔥🔥
@Ankishkhatri
@Ankishkhatri 3 роки тому
Super useful video. Thank you so much.
@SwiftfulThinking
@SwiftfulThinking 3 роки тому
Thanks for watching Ankish!
@keshavkhaneja
@keshavkhaneja 2 роки тому
thank you so so so much
@blytte
@blytte Рік тому
Really, thank you very much!
@SwiftfulThinking
@SwiftfulThinking Рік тому
Thanks Roberto! Welcome to the channel 🤙
@kevniwoodside5015
@kevniwoodside5015 2 роки тому
If I get a job, it'll solely be because of you. You are a GODSEND
@SwiftfulThinking
@SwiftfulThinking 2 роки тому
It’s not an “if”, it’s a “when” 😉🤑
@kevniwoodside5015
@kevniwoodside5015 2 роки тому
@@SwiftfulThinking You got that right!!! Im on my fourth round for a big job and suddenly they said there was "heavy" need for someone with SwiftUI skills so I lied and was like, "I've been making apps since I was a baby". Cut to me binging your stuff. Luckily it's a lot like other languages, but still, I'll buy you all the coffee you want if I get it cause of you!
@SwiftfulThinking
@SwiftfulThinking 2 роки тому
@@kevniwoodside5015 Haha I hope you get it. Let me know!
@leneil46
@leneil46 Рік тому
🔥
@aleck30
@aleck30 5 місяців тому
G.O.A.T.
@douglasrutledge1325
@douglasrutledge1325 2 роки тому
you would be perfect for a traffic guard, my brain is starting to ooze ... Super Beginner is true, thus we watch [ aka: @State] these BootCamp videos.
@edhopkins6589
@edhopkins6589 Рік тому
Outstanding video training for the beginner. I am on Bootcamp#22 ~enjoying it so much. I watch for a few minutes, then pause the video. I then type in the exact information into the XCODE editor. unpause, watch, pause, code, ... ~ until the end of the video. ^this method reinforces you practical teaching style. Thanks for such a great video series.
@SwiftfulThinking
@SwiftfulThinking Рік тому
Thanks for the comment Ed!
@30guarino
@30guarino 3 роки тому
Hey Nick..... Great videos! Just started with SwiftUI but still on UIKit. Going to go back to your Udemy course to actually start doing it after you're done with the Bootcamp. ......FYI ...organize the playlist #17 & #18 are out of order because of the updates you showed us......Thanks again
@SwiftfulThinking
@SwiftfulThinking 3 роки тому
Haha thanks David! I just fixed the playlist... still getting the hang of UKposts :)
@30guarino
@30guarino 3 роки тому
@@SwiftfulThinking You're doing great!
@rangetwofan
@rangetwofan 2 роки тому
Amazing Playlist and extreem learn full thank you soo much for this! I just starting to learn programming. Got one question i know it's not that much of a deal, but just wondering. here for example you crate a var backgroundColor: Color = Color.red while in a previous vid you did backgroundColor: Color = .red. Some story in the body under the button. do you have a reason why you sometimes skip Color? Or i'm seeing pink elephants and there is no reason behind it?
@arslanrasit
@arslanrasit 7 місяців тому
Omg this state management is way simpler than Flutter
@toastrecon
@toastrecon Рік тому
Interesting! Can you call functions within the parent from the child? Say you had wanted the button to call a function within the main view that added a random number to a variable? Or, if you were using MVVM, you'd need to call a method on the view model...
@SurajKumar-uj4qt
@SurajKumar-uj4qt Рік тому
great course i have repeated second time to improve my coding
@SwiftfulThinking
@SwiftfulThinking Рік тому
Awesome. I’d imagine you’re getting pretty good then 🚀
@Stevesvideoshelf
@Stevesvideoshelf 2 роки тому
This is soo good! I feel like I'm learning a lot! I'm curious if in a later video you cover how to do this, but where the @State variables are @StateObject variables from @Published variables in a separate class? for instance: import SwiftUI class Data: ObservableObject { @Published var title = "Title" } struct ContentView: View { @StateObject var data = Data() var body: some View { VStack { Text(data.title) .padding() // I think I need to do something here? Or maybe I'm way off target. ButtonView(data: Binding) } } } struct ButtonView: View { @Binding var data: Data var body: some View { VStack { Button(action: { data.title = "Hello" }, label: { Text("Button") }) } } } // In any case Thanks again for all the effort you put into these!
@SwiftfulThinking
@SwiftfulThinking 2 роки тому
Haha what you're describing is a ViewModel. In all of my intermediate/advanced videos, we use MVVM architecture... which is this!
@Stevesvideoshelf
@Stevesvideoshelf 2 роки тому
@@SwiftfulThinking Awesome! I look forward to getting to those 😁. I may or may not have already created an account on stack overflow where I asked the question and got an answer that enabled me to separate out all the views in an app I'm building into separate files... But I definitely will be taking your MVVM courses!
@douglasrutledge1325
@douglasrutledge1325 2 роки тому
@@SwiftfulThinking hold the horses, lets get through the BootCamp first!
@Jump_Jay
@Jump_Jay 2 роки тому
I'm still just a little hazy on using it. Do you have more examples of using it?
@techandbeauty22
@techandbeauty22 2 роки тому
if I make the button like you showed. I want the background color and the text to change at the same time. so if the background color changes to Red then I want the text to say Red. how would I do that?
@raimitis
@raimitis Рік тому
How did you select all Button part at 4:55?
@zawiyarkhan6470
@zawiyarkhan6470 5 місяців тому
if i have 2 views on 2 seperate swiftUI files, can i use this binding and state wrappers to share data between the views?
@douglasrutledge1325
@douglasrutledge1325 Рік тому
ok, my fourth+ time around this video. Now I realize you keep these @State and @Bindings between struct and Views. It's the only way they work... What about if you have a deep function and you want a progress of it cogs churning out data, like an actual real data update. How does that work? I hope you have time to answer and link to a video I can watch. THANKS
@pigang14
@pigang14 Рік тому
Hi, Nick, how are you? I have a small question. You have typed in your video backgroundColor = Color.orange (3:46, line 20) I typed backgroundColor = .orange and it still works. Is it difference between this 2 statements? Thank you!
@SwiftfulThinking
@SwiftfulThinking Рік тому
There is nothing technically different. Depending on the situation, sometimes the compiler doesn’t know what type something is, so Color.orange confirms that .orange is a Color. I’m mostly doing that here bc it’s a beginner tutorial and want to be explicit 😅
@knowledgeispower4953
@knowledgeispower4953 3 місяці тому
sup bro...😇
@user-yd9xy3rb4x
@user-yd9xy3rb4x 2 роки тому
What to do with a subview when your subview is created as a separate file? Preview gives me a mistake because I must determine an argument as a Binding type to enable the canvas to display the view.
@user-yd9xy3rb4x
@user-yd9xy3rb4x 2 роки тому
never mind. I remember how to deal with the issue. I gotta utilize .constant(value) on the separate previewer's parameter. I hope I didn't mix some terms up.
@quervy4097
@quervy4097 2 роки тому
@@user-yd9xy3rb4x I have different files and it doesn't work, help would be much appreciated?
@rasheed1andrew
@rasheed1andrew 3 роки тому
I'm having a problem with binding. I created a button in a swift ui file and I created in another swift ui file an image that is supposed to animate. this image is an extracted subview of the second view. the same image has been used in another subview. when I create the state variable in the subview (the image itself) and bind it in the button file, I get an error on the preview file and every other subview that contains the image. how do I fix this. I hope I've explained this right.
@SwiftfulThinking
@SwiftfulThinking 3 роки тому
Hi Rasheed, it's hard to tell what the problem is. When you create a @Binding in another file, you are creating an initializer in that file that requires you to connect the @Binding every time you create the file. So all of the previews are looking for this now. An easy way to fix the error is to use .constant() and put your image inside the parenthesis.
@Jump_Jay
@Jump_Jay 2 роки тому
Is there a Discord or StackOverflow for these videos?
@SwiftfulThinking
@SwiftfulThinking 2 роки тому
Check the “Community” tab of the channel. There should be a link to the Discord 🔥
@alexpascal5403
@alexpascal5403 Рік тому
Nick. My sister will pull your Peter for free. Since you have great tutorials, she’ll drive from ct to the island.
@magedmohmed4403
@magedmohmed4403 Рік тому
I Want to Thank you very much man , you very helpful for us 🤎🤎
@magedmohmed4403
@magedmohmed4403 Рік тому
Really , thank you nick for your helpful explanation tutorial 🤎🤎
@emilymorrison6495
@emilymorrison6495 Рік тому
Thank you!
How to use if-else and conditional statements in SwiftUI | Bootcamp #23
18:13
Swiftful Thinking
Переглядів 19 тис.
🔥 Україна виходить у ФІНАЛ ЄВРОБАЧЕННЯ-2024! Реакція alyona alyona та Jerry Heil #eurovision2024
00:10
Євробачення Україна | Eurovision Ukraine official
Переглядів 137 тис.
Why I spent $3600 on the iPad Pro M4.
16:12
Mrwhosetheboss
Переглядів 1,9 млн
State & Binding | SwiftUI in 5 minutes | 2020
4:44
Krass Iankov
Переглядів 14 тис.
Adding markups and documentation to Swift in Xcode | Bootcamp #45
25:21
Swiftful Thinking
Переглядів 12 тис.
How to use and ignore the Safe Area in SwiftUI | Bootcamp #17
17:24
Swiftful Thinking
Переглядів 24 тис.
SwiftUI - @State Property Wrapper Explained
4:31
Sean Allen
Переглядів 16 тис.
How to use inits and enums in SwiftUI | Bootcamp #13
19:30
Swiftful Thinking
Переглядів 35 тис.
Learn React Hooks: useCallback - Simply Explained!
17:15
Cosden Solutions
Переглядів 64 тис.
M4 iPad Pro Impressions: Well This is Awkward
12:51
Marques Brownlee
Переглядів 3,8 млн