Video nenà dostupné.
OmlouvĂĄme se.
What's new in SwiftUI for iOS 16?
VloĆŸit
- Äas pĆidĂĄn 12. 08. 2024
- In this video I walk you through some of the many new features in SwiftUI for iOS 16, including search scopes, bottom sheets, grids, share sheets, and so much more.
0:00 Welcome to the Developer Center
0:37 New Navigation: NavigationStack
3:47 New Navigation: NavigationPath
5:30 New Navigation: NavigationSplitView
11:08 Bottom sheets
13:50 Fixed grids
20:20 onTapGesture location detection
22:02 ShareLink
25:25 MultiDatePicker
28:13 Searchable scopes
34:23 Simple gradients and shadows
37:21 AnyLayout
41:05 Requesting app review from users
43:09 Dismissing the keyboard on scroll
46:09 Hiding scroll indicators
47:47 Hiding the home and multitasking indicators
49:07 Variable values for SF Symbols
52:04 Line limit ranges for text
53:07 Text animation
54:52 Automatic expanding text fields
57:17 Bold and italic now take Booleans
58:44 Foreground color animation
59:53 Toggling an array of Booleans at once
1:02:38 Summary
Recording this video wouldn't have been possible without the help of Apple's developer relations team, who very kindly invited me into their new Developer Center in Cupertino. Thank you đ
SO SO SO happy you finally are getting the recognition and platform from apple that you deserve. As many of the people here can attest, you have been an invaluable asset to my career. Thank you for everything you do!
Agreed, Paul really has been a massive contributor to the eco-system. He's helped many people become passionate about coding, he, Aivars and Seal Allen have inspired me to start my own channel.
Timestamps:
0:00 Intro
0:35 NavigationStack
3:48 NavigationPath
5:32 NavigationSplitView
11:10 Sheet presentationDetents
13:50 Grid and GridRow
20:18 onTapGesture location
22:02 ShareLink
25:25 MultiDatePicker
28:12 Searchable scope
34:24 Gradient
36:10 Shadow
37:18 AnyLayout
41:06 StoreKit requestReview
43:08 scrollDismissesKeyboard
46:09 scrollIndicators
47:46 persistentSystemOverlays
49:04 SF Symbols 4
51:54 Text lineLimit range
53:07 Text animation
54:50 TextField axis & lineLimit
57:16 bold & italic toggling
58:45 foregroundColor animation
59:53 Binding Toggle view to array
1:02:39 Summary
Thanks Image(systemName: "xMark")
thanks Mark
Many thanks Mark
Thank you Mark (looking forward to your book updates!)
Paul dropping a dril reference from the apple developer center was not on my WWDC bingo card. đš
Watched this video with half of me thinking how good the new features are and half of me thinking how the hell have you learnt all that and created such a flawless run through so quickly! Amazing job!
Honestly, most of it is just raw excitement - this is the absolute best part of my job, and I love getting to share the fun and happiness I feel with others.
Totally concur, my brain melted between all the mindblowing features, mindblowing on the fly flawless run, teaching it so effortlessly⊠Iâm at 40mins but wow, had to stop and see at the comments.
(context: I do a lot of game related UI stuff in Unity mostly âby handâ on C# so all these SwiftUI built in native functionality is nothing short of insane to me, blue.gradient.shadow? Yeah right, 20mins for that minimum for me xD)
Fantastic walkthrough of the new additions to SwiftUI!!!!
I feel like you should be the person presenting this stuff at wwdc. You always explain everything so well and have a great speaking voice
That's very kind of you to say - thank you! đ
Utter brilliance, Paul! I've been searching for how to build a share via direct message feature similar to the one in Twitter, and landed on your video. Wondering whether it is possible that you can make a video on that, or provide a pointer. Thank you again for introducing me to the wonder world of swiftui with your knowledge and enthusiasm! There is so much to learn, and so little time.
Sheesh! Straight from WWDC youâre amazing! The studio looks amazing!
Holy crap this is a massive update with very important new features... I think SwiftUI might be ready for prime time.
What a super-useful video-thanks a lot for your time and effort! Live coding for an hour without any breaks or cuts on this new stuff is amazing and a must watch!
Loving the updates to SwiftUI, there are a lot of things which I've always wanted that are now added, which I'm really grateful for.
Thank you for this video, it was really helpful! I was slightly confused about how NavigationStack and NavigationSplitView is different from NavigationView after watching Apple's "What's new in SwiftUI", but it makes sense now :)
This man is a machine of coding!!!
Love the fact that bottom sheets are finally here! One of the Swift features that I really feel like we were missing before now, great to finally see it
For me, they've pretty much addressed all of the pain points I've had as far as I can tell. I really wanted the Window scene and it's there, plus they added the MenuBarExtra scene, which is just a bonus for me. I hated the lack of customizability of forms on macOS and it's now resolved for me. I hated the lack for programmatic navigation and now that's resolved. The fact that they added in Swift Charts just blows my mind. Oh and the grid layouts and any layouts solves so many issues.
I honestly can't see any reason why anyone would use UIKit / AppKit when building a new application now. I was extremely hyped for WWDC this year and Apple did not disappoint.
Nice! đđŸđđŸ
SwiftCharts doesn't give you much more fidelity in creating custom UI, it doesn't bridge the gap between custom controls rendered on Quartz/CoreGraphics.
The biggest problem for me is still the distance between what a designer creates in Abstract or Sketch, and the code needed to create a UI component that isn't easily created using SwiftUIs limited controls, whereas CoreGraphics gives us the fidelity to do as such.
@@petersuvara Well since SwiftUI uses Core Graphics for graphics, I haven't had issues with creating vector assets. I'm yet to run into issues in this domain.
@@petersuvara I think you should look into it, because it's extremely customizable, and you're free to use Core Graphics as well.
Paul, you are one of the best tutors online! Thanks for sharing it.
Every feature you went over is something I have been waiting for!!!! One thing I want to see soon is a gracious way to dismiss keyboard on iOS number pad
That arrived last year: www.hackingwithswift.com/quick-start/swiftui/how-to-dismiss-the-keyboard-for-a-textfield
@34:00 - The excitement is almost tangible ! :D Hahha, thanks Paul.
Propper Legit Rundown/Tutorial. Appreciate the time and effort put into this Paul as I recon you would have had to do a wee bit of prep for this presentation as well as the hour long tutorial itself. All the things that I was looking for to create a wee map in my mind as to what is possible for apps come this September.
Really enjoy your enthusiasm.
The biggest thing for me for this update is the attention being paid to the Navigation of the iPad and how someone with a limited amount of coding ability can, through a bit of study, start manifesting ideas that can go across the different platforms, where the iPad or Mac is a central point for data input and key organisation and the iPhone is the smaller representation of ones carefully designed ideas, plans and information.
Nice one !!!
Thank you Paul for everything you've done. You're an amazing teacher!
As an aerospace engineer working in defence industry, I've been able to become a full time iOS developer in less than three months. I can't thank you enough for this :)
Really cool new additions. Personally psyched about the navigation and split screen options!
3 years and we're just getting navigation stack seemingly the most common thing in ios. swiftui really got off to a rocky start. so now we have to wait till our apps support ios 16 to get reasonable navigation! great
U deserve it amazing videos and making me understand after being a c# programmer for 20 years
Thanks, Paul! A wonderful update with really great, easy-to-follow examples. I appreciate your hard work. Well done!
Were we not all hoping for updated CoreData API? đ„
We really were, and I feel sad it didn't arrive this time. Same for improving the Maps support, or adding cache control to AsyncImage. I guess we're waiting for at least iOS 16 nowâŠ
I for sure was. And kinda disappointed itâs not đ„Č
whats wrong with coredata?
Great overview, Paul! Thanks! I'm loving all the updates Apple has made to SwiftUI. There's not a single one I can think of that isn't well deserved or greatly appreciated. It's probably going to take me a month to go through and absorb all the session videos. I spent weeks last fall getting a NavigationView to behave just the way I needed it to, but it's clunky at best, and now I can easily replace it all with a simple NavigationStack. It's exactly what I need. Top of my wishlist would be to give Gestures some much needed love, like being able to pan and zoom a view at the same time without having to delve into UIKit and using gesture recognizers. Or having swipe gestures like UIKit has.
Welcome back PaulâŠâŠ Would it be possible to playlist your videos into the mini apps you created on the channel
Thanks for the content
I wish there were two thumbs up. Awesome review.
As someone very new to SwiftUI but that is experienced with design, NavigationView was one of the most confusing and infuriating bits of SwiftUI and Iâm glad itâs gone.
Now there is separate .searchScopes modifier. Also scopes are visible only if there is a value in the search field.
Thanks so much Paul! All of this is really great and will allow even more succinct code in SwiftUI. I have not yet seen a mention on Xcode's new automatic "CTL-I" for reformatting. You add a VStack { and then complete the end of the stack with a } brace and it reformats for you. Saves another step. Safe travels home!
Big Ted Lasso fan!!! Great ref Paul.
I couldn't resist!
@@twostraws haha. Hope you're keeping well.
Yay for the changes to onTapGesture, Iâve been waiting for that.
I'm spending all day digesting this great video. A skulduggery joking delight!
This is awesome. One thing I wish we had is the ability to customize the default appearance of all of Apple's SwiftUI elements. E.g, customize the textfield, customize the date picker, etc, etc.
Currently the only real way is to use the Introspect 3rd party library.
Thanks for the video Paul!!!
A great year for SwiftUI. My favourite is the Layout protocol. They have effectively given us CollectionViews as a protocol in SwiftUI. Also, the rehash of navigation means I can remove the hacks I had around it before.
Amazing breakdown Paul! Thank you!
That's so cool you were able to record there! I'm only mildly envious đ
Good video. The problem with TextField (at least on iOS 15) is that it is buggy with custom bindings. What you see in the text field won't be in sync with the stored value when you modify it in the set block. For example, if you remove all the numbers in the string before assigning it to the state value in the custom bindings set block, what you see in the text field itself will only be updated to remove the numbers when entering a non number afterwards. TextEditor don't have this issue, it will immediately update the contents when modifying the value in set. I have also checked that set is indeed called for every number entered, it's the text field that just won't show the updated value, as well as the value it supplies as a parameter to the set block will be the unmodified one(the same shown in the text field). Another issue with TextField is that it will call the custom binding set block twice for every character you enter, TextEditor only calls it once. Hopefully these issues are fixed in iOS 16.
File radars for those issues
Thanks for sharing this content Paul. Awesome overview of only a portion of what's been introduced. Really happy for these updates.
Paul, That was awesome. I actually understood most of it!
Very nice video. Thanks.
HEY, PAUL⊠Great! You should have brought your dogs to WWDC22, so the videos are more fun. Thanks for your time and effort in the midst of ongoing events.
I think folks like the dogs more than they like me! đ
@@twostraws I would say that on the same level, you are a great person and they are great partners. My dog ââsits next to me to watch me develop applications, in silence and he knows when I have finished an idea, until then he remains silent (I admire dogs a lot).
Thank you, Paul and thank you, Apple's developer relations team!
AnyLayout is amazing. Finally custom, flexible layouts.
Very nice and quick overview of SwiftUI 4.0!
Thank you!
Dear Paul, you are my hero ;-) But your home studio illumination is _much_ betterâŠ
58:10 Given how difficult it is to add or remove modifiers at runtime, more SwiftUI modifiers should work like that!
thanks for the content boss!
Thank you Sr to help us I love it
Am I the only one, who is here to see the space and the office!!!
hahaha
Looking as always good sir!
As always, another very very helpful video. Keep up the great work!!
Very good overview. Love the sheet updates!
One man has many dogs.
Many dogs have one man.
Glad that I'm not the only one who has a budget of $3600 for candles.
LOL
Perfect overview, as usual đThank you Paul. đȘ
You are awsome!
You're the best Paul! đ
Great video. Can't wait to start using these new features. As far as what I would have liked to see would have been a replacement for CoreData, and also away to toggle the Map() type from regular to satellite view.
Yes, both of these omissions make me sad đ
Hi Paul. You're awesome! Are you going to update 100 day courses?
There's no need, really - I might add some of the new features, but anything that has been updated will still work without warnings for a long time yet. It's likely I'll do a bigger update for iOS 17.
The best WWDC22 video.
Thank you, Mark! đ
@@twostraws no, Paul, THANK YOU!!
I think you missed to cover the line/bar chart feature in the video.
But anyway, this video is good enough for me to know about the changes on SwiftUI
Well Done Mate
No; that's a separate framework called Swift Charts. It integrates well with SwiftUI, but it's not part of SwiftUI.
thank you!
Extremely helpful! Thank you Paul as usual
Extremely helpful! Thank you, Paul.
Thanks Paul for the update on XCODE
Awesome features that is why we love SwiftUI.
Awesome! Thank you so much for your great work
Thank you Paul, very helpful.
Thanks for this Paul đ
The biggest problem for me is still the distance between what a designer creates in Abstract or Sketch, and the code needed to create a UI component. It isn't easily created using SwiftUIs limited controls, whereas CoreGraphics gives us the fidelity to do as such, and render EXACTLY to the pixel, how we want to see something.
I still use storyboards but this looks cool and easy
Very usefulïŒThanks!
Hi, Iâve found your tutorials and videos very useful. Iâm a software engineer but Iâve only recently picked up Swift and SwiftUI for interest. One thing that I find isnât properly explained is optimal server side solutions for applications. For example, if I were to create a social media application, is there a recommended service/infrastructure to store things like user data and anything sensitive? Iâve seen some people refer to Firebase and others using standard SQL variants but there isnât much beyond that. Any advice or resources?
Maybe the issue has already been reported? When I run the first example of NavigationStack with path: in the simulator, I get the following runtime error:
A NavigationLink is presenting a value of type âIntâ but there is no matching navigation destination visible from the location of the link. The link cannot be activated. đȘ
Thanks a lot đ
Have you any videos that show how to go to another view in button click in c sharp we would simply return the view to the funciton?
Cool!
Paul, what a tour de force of SwiftUI 4! Bravo! I was just wondering about Image struct in SwiftUI. I'm really hurting for API support for animatedImage(with:duration:) like UIImage has. Any thoughts on if they will provide support or do you think that I should just hunker down and build my own implementation? Much thanks!
Awesome video. Have they made any substantial changes to editable Lists? For example, allowing a list to be sortable without the cells being indented in 'Edit Mode' I believe they are no longer backed by UITableView, so you can no longer reach down into the underlying UIKit view to modify the list behaviour,
I think it's now backed by UICollectionView
I don't know why Apple hasn't bought you or your site yet. You have the ability to turn their complex examples into simple, atomical examples.
Thank you! That's very kind of you to say. I have dreams about being to make way more of these kinds of videos, maybe get some design help too so I can use some nice slides or similar to explain more advanced concepts, and in particular be able to do this *ready* for WWDC rather than after - have a whole bunch of fun, enthusiastic hands-on videos for Swift Charts, for example. Paul Hudson + Apple would be epic! Maybe some dayâŠ
Searchable deprecated in iOS 16? Is searchscope the same or am I missing something?
Are there any visual SwiftUI designers that will run on Windows that can create files that will compile on the iPad version of Swift Playgrounds? I can't afford to buy a Mac right now, but hope to soon. I have a 2020 iPad Pro, 12.9", 256gb, but would prefer to have a visual designer.
.gradient OMG đ”đ€Ż
Can you use this new NavigationStack for iOS 16, but still support for iOS 14.0 (SwiftUI 2)? I struggling trying to adapt my project in order to support all versions from 14.0. The reason I'm trying its because I have encountered some bugs using NavigationView in iOS 16.4 and 16.5.
One of those bugs is that when keyboard is present If I press on some button that open some navigationLink programmatically, then the navigation won't open or will close it self. The funny thing is that when I focus any field... the navigation will fire.
Can you help me Paul, please?
I can't believe I will have to wait to the next SwiftUI release to have the possibility to hide the disclosure indicator without using EmptyView workaround. Whyyyyy Apple!
Double Boom at 1:18 :)
BOOM!
Hi there! Great video thanks! I have a question for you, or for everyone that has an answer. Is there a way to get a clear/transparent background for List on SwiftUI? Because by default, there is no modifier that changes Lists background color, and before iOS 16 I use to use a « UITableView.appearance() » in the init() of the view to change that, but it seems like that this doesnât work anymore on iOS 16 :/
Did they happen to add Data Detectors to TextField yet or is there another SwiftUI-y way to get this functionality without using UIViewRepresentable?
Hi Paul, can you please help why is it difficult to change Textâs thickness? My small brain didnât even knew that it would be more difficult to pull this feature than others styling changes in SwiftUI.
Is this all specific to ios 16 or does it work with ios 15 as well?
Sir we now totally relay on swiftui instead of uikit
Can you upload subtitles, my English listening is not very good, thank you
SwiftUI is being more complex release after another for beginners
Anyone know how to replicate the progressive status bar blur in iOS 15?
will NavigationStack be compatible with iOS 15?
No.
Can you go over the new Lists? They seemed to have gone away from using UITableView and have replaced it with something else, since UITableView background colour doesnât seem to work anymore. To which I canât seem to find how to change the background colour of a List nowâŠ
Try modifying the color for a collection view instead of table view
my main thing, if apple can be believed... devices over the last 5 years support the newest code, then, overall you're ok just supporting 14/15 and encouraging support for 16.
Hi, SwiftUI changes every year, I have a mac that's quite old and it's only up to iOS 14, should i continue learning iOs14 in the meantime?
@25:15 Could it be a similar sort of situation as to why you can't open "tel": urls in the simulator, for example?
I think the problem is more likely to be the image, but it's hard to tell.
But what if we want to push to a view which does not have parameters? How can we add those views to the stack?
They work exactly as before: just create a plain old NavigationLink.
@@twostraws Yes i know! I mean what if we want to have them in the stack so we can work with them programmatically.
I am just starting to learn SwiftUI and you are so helpful! A question for you are other commenters: you said in your how to become an iOS developer video not to use beta software, but SwiftUI seems to have changed quite a bit, particularly with navigation. Should I start with SwiftUI 4.0 and change if something changes during the betas, or start with 3.0 and learn 4.0 in the fall. I am only new to Swift and SwiftUI, not development in general. Thanks! Much love for all of your hard work!
No, you should not learn with beta software.
The main lesson you should learn is that change is a constant and learning has no end. If you're getting into programming, you should be prepared to be a student for life. I've been doing this professionally for over 17 years and I'm still learning every day.
My view is it's fine if you begin with the beta software as long as you're aware that the APIs could and possibly will change between now and ~September, when the final versions will be released.
@@nitesh-maharaj thanks, that is also what I was thinking. I have experience with Python, the basics of swift are not hard or confusing to me. I think it makes more sense to learn the newest stuff and adapt to those changes, but perhaps I will start in the second beta