How to use @Binding property wrapper in SwiftUI | Bootcamp #22
Вставка
- Опубліковано 30 вер 2024
- 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...
🤙 WELCOME BACK 🤙
WEBSITE: www.swiftful-t...
DISCORD: / discord
GITHUB: github.com/Swi...
SAY THANKS: www.buymeacoff...
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.
This course is so damn good. Thank You!!!
Totally agree!
Yes. He’s good!
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.
Thanks Derek! All of my playlists are structured like this 🚀🚀
Your explanations are fantastic. Such good content to allow people to learn. Thanks Martin
Thank you so much for this course! Wish Apple would be as passionate as you to make their tutorials this clear!
I watched many SwiftUI videos, and this is the best explanation of @Binding I have seen
7:36 as I understand it, the $ sign gets the projectedValue of a property wrapper...for the @State property wrapper, the projectedValue is a @Binding property wrapper for the property
You have some great content. Nice video. Thanks for putting out.
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
Super helpful videos! Really like the flow from video 19 to 22 (@State, extracting views, subviews, and then @Binding)
Hey my dude don't apologizes cause you are really teaching this and honestly all this stuff the way you teach is actually sticking
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?
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
You are the best. Thank you so much for doing this
You are Genius at teaching thank you so much
if i have 2 views on 2 seperate swiftUI files, can i use this binding and state wrappers to share data between the views?
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!
Haha what you're describing is a ViewModel. In all of my intermediate/advanced videos, we use MVVM architecture... which is this!
@@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!
@@SwiftfulThinking hold the horses, lets get through the BootCamp first!
Nick. My sister will pull your Peter for free. Since you have great tutorials, she’ll drive from ct to the island.
THANK U, you make difference
Absolutely loving these videos. You have connected so many things that I had seen in other videos or tried in the Apple documentation, that had not made since to me. I appreciate the work you are doing. Thank you!! Keep up the good work man!
Thanks! My whole channel uses the same teaching style 👍
This playlist is really helpful. Thank you for making.🤗
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!
very very useful! thank you so much!
Omg this state management is way simpler than Flutter
How did you select all Button part at 4:55?
Well explained! Thanks!
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!
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 😅
thank you so so so much
Is there a Discord or StackOverflow for these videos?
Check the “Community” tab of the channel. There should be a link to the Discord 🔥
Thank you!
Thank you!
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.
sup bro...😇
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.
great course i have repeated second time to improve my coding
Awesome. I’d imagine you’re getting pretty good then 🚀
The video explains so clear yet efficient. Apple should hire you as an engineer , to promote Swift and SwiftUI.
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
Haha thanks David! I just fixed the playlist... still getting the hang of UA-cam :)
@@SwiftfulThinking You're doing great!
Thanks Nick. Great job explaining @Binding. I finally understand this
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!
🔥🔥🔥
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...
Don't you ever be sorry Nick! This is great learning for noobs like me. You explain it so good Thank you!
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?
No need to apologize , even it's basic , it's important , Good Work !
Really, thank you very much!
Thanks Roberto! Welcome to the channel 🤙
🔥
I'm still just a little hazy on using it. Do you have more examples of using it?
Super Beginner? Yes, that's me... thank you for this series.
Very informative video, thank you so much for this!
Binding explained in a really good way. Thanks !
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.
Thanks for the comment Ed!
love it! thank you so much, very helpful!
G.O.A.T.
I can't thank you enough for this series.
super super clear!! I love it
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.
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.
Super useful video. Thank you so much.
Thanks for watching Ankish!
Crystal clear!
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.
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.
@@Денис-ж3ф5р I have different files and it doesn't work, help would be much appreciated?
If I get a job, it'll solely be because of you. You are a GODSEND
It’s not an “if”, it’s a “when” 😉🤑
@@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!
@@kevniwoodside5015 Haha I hope you get it. Let me know!
I Want to Thank you very much man , you very helpful for us 🤎🤎
Really , thank you nick for your helpful explanation tutorial 🤎🤎