Super Power Scroll Views - SwiftUI - iOS 17

  Переглядів 20,150

Sean Allen

Sean Allen

День тому

Go to squarespace.com/seanallen to save 10% off your first purchase of a website or domain using code SEANALLEN.
SwiftUI ScrollViews got super powers in iOS 17. Today's video goes over how easy it is to add transition animations, snapping and more.
WWDC 2023 Video - Beyond ScrollViews:
developer.apple.com/videos/pl...
My iOS Dev Courses:
seanallen.teachable.com/
X (Twitter):
Sean Allen - / seanallen_dev
Hired.com:
hired.com/x/1n01g
Book and learning recommendations that help out the channel if you decide to purchase (Affiliate Links):
Paul Hudson's Hacking With Swift:
gumroad.com/a/762098803
Donny Wals - Combine:
gumroad.com/a/909014131
Mark Moeyken’s SwiftUI Books:
www.bigmountainstudio.com/swiftui-views-book/fzc51
Objc.io Books (Thinking in SwiftUI & Advanced Swift):
gumroad.com/a/656585843
0:00 - ScrollView iOS 17 Updates
0:41 - Adapting to size classes
2:31 - Next item peeking - contentMargins
3:41 - Snap to view when scrolling
5:12 - Transition Animations
#swift #softwaredeveloper #iosdeveloper

КОМЕНТАРІ: 60
@seanallen
@seanallen 7 місяців тому
Learn more in my iOS Developer courses - seanallen.teachable.com
@DD-hh3sp
@DD-hh3sp 23 години тому
Great tutorial, Sean, saved the day. And love your teaching style as you explain it well and make it easy to understand.
@debasismandal1924
@debasismandal1924 7 місяців тому
I'm still surprised how easy it is to add such animations in SwiftUI. Thanks for the content, always!
@seanallen
@seanallen 7 місяців тому
Yeah, you can get some really cool inactions pretty easily. It's great.
@kdtechniquesofficial6153
@kdtechniquesofficial6153 6 місяців тому
Love the Transisions, can't wait to use it.... ❤
@PatronLite
@PatronLite 7 місяців тому
Awesome, this is so cool, sometimes I have used scrollviews and I want to put something different at the time of interaction, and this is so cool.
@seanallen
@seanallen 7 місяців тому
Glad it helped!
@liftingwithjames
@liftingwithjames 7 місяців тому
🤯 Amazing content as always Sean! Thanks for this!
@seanallen
@seanallen 7 місяців тому
Glad you enjoyed it!
@JasonMitchellAZ
@JasonMitchellAZ 7 місяців тому
These iOS 17 updates look great!
@seanallen
@seanallen 7 місяців тому
They sure do!
@yusufkaran
@yusufkaran 7 місяців тому
perfect timing for me
@seanallen
@seanallen 7 місяців тому
Happy to hear it!
@kayboy6055
@kayboy6055 Місяць тому
I love you best of luck in content creation. I hope lots of people find your help.
@seanallen
@seanallen Місяць тому
I appreciate it
@AndrewDChristie
@AndrewDChristie 2 місяці тому
Thanks!
@seanallen
@seanallen 2 місяці тому
I appreciate the generosity, Andrew!
@JoseManuel-zb6id
@JoseManuel-zb6id 2 місяці тому
You are the best
@seanallen
@seanallen 2 місяці тому
:)
@raulbatista9096
@raulbatista9096 7 місяців тому
Ready to use in your projects by 2025 :D :D
@seanallen
@seanallen 7 місяців тому
But it will be a great day when you can use it :)
@TVsBen
@TVsBen 7 місяців тому
This is awesome. I love your teaching style, and your videos are always on point. So the big question for me becomes when should I start adopting iOS 17 API changes? Should I just dive in right away now that it's public, or should I wait? What is adoption like a week after release? I don't know how to check these things, but that's OK. I feel like I should assume most iPhone users will upgrade quickly, most likely. It's a little hazier when I want to also publish a Mac Catalyst version, because stuff like SwiftData and these new features won't run on Sonoma, and I don't know if people upgrade their Macs straight away.
@seanallen
@seanallen 7 місяців тому
Glad you like them! There's not official data out on that yet, but historically yes... iOS users tend to adopt the latest version pretty quickly. Here's the iOS 16 adoption for context - mixpanel.com/trends/#report/ios_16/from_date:-365,report_unit:week,to_date:-27
@alejmc
@alejmc 7 місяців тому
SwiftData doesn’t work on Sonoma? Really? 😮
@IIJKII
@IIJKII 3 місяці тому
Great video! just wondering if there's any way to add a small peek to the next item in the scrolling list?
@seanallen
@seanallen 3 місяці тому
I believe there is, but not sure the exact code off the top of my head (I'm out an about replying to comments).
@chezchezchezchez
@chezchezchezchez 7 місяців тому
Sean, have you done a deep dive into swift data? i’m having some issues now with the model controller. Trying to get my first app on the App Store. These errors are killing me.
@seanallen
@seanallen 7 місяців тому
I haven't done a super deep dive. I have my surface level Swift Data video and I'm working on my own Core Data - SwiftData conversion. Give me a few more months and I'll be a lot more comfortable with it.
@kdtechniquesofficial6153
@kdtechniquesofficial6153 6 місяців тому
At times, it may not line up perfectly. To observe this, test it on an iPhone and try swiping your finger back and forth very quickly. When you release your finger, you'll notice it.
@dhedges1340
@dhedges1340 7 місяців тому
does this work in vertical lists also?
@seanallen
@seanallen 7 місяців тому
Vertical scroll views, yes. The official List object, I'm not sure.
@dhedges1340
@dhedges1340 7 місяців тому
@@seanallen I got this working and was then able to adjust it to work vertically using a custom view I made instead of a circle. Thank you. As a side effect it still is passing the gradient colors from the items array which adds a cool design
@seanallen
@seanallen 7 місяців тому
Nice work!
@BrEd-2400
@BrEd-2400 5 місяців тому
This is awesome. However, when I attempt to use it in my project I am getting the error: 'containerRelativeFrame(_:count:span:spacing:alignment:)' is only available in iOS 17.0 or newer. There's a couple of fix options: - Add 'if #available' version check - Add @available attribute to enclosing property - Add @available attribute to enclosing struct So does this mean if the running user's device is not on iOS 17 then this feature is essentially not accessible for them? Personally, I want to code 1 thing and not have to incorporate checks to see if they are on iOS 17 and if they aren't then have to code a different feature for those users.
@BrEd-2400
@BrEd-2400 5 місяців тому
Ahhh - I updated my xCode project so that the Minimum Deployment is iOS 17.
@seanallen
@seanallen 5 місяців тому
Yes, this feature is only available in iOS 17. So if you need to support iOS 16 or below, you’ll need to use the availability checks you listed above. However, if you can make your app a minimum of iOS 17 then you can use the code in the video.
@seanallen
@seanallen 5 місяців тому
Note… these new scroll view features in this video are new and only available in iOS 17
@Bedwards2400
@Bedwards2400 5 місяців тому
That makes total sense. If I am working on an App that I expect to get onto the App Store within the next 6-12 months, do you think making the Minimum Deployment of iOS 17 is fine? Curious if it would negatively impact downloads and what not.
@seanallen
@seanallen 5 місяців тому
If you aren't going to release for another 6-12 months then I would do a minimum of iOS 17. Because by the time you release iOS 18 will be out (or close to being released) and it's most common to support the latest 2 iOS versions (in your case would be iOS 17 and 18).
@who.is.dayton-ch9fb
@who.is.dayton-ch9fb 7 місяців тому
Has anybody else gotten this to work? When I try I get 2 errors on line 19 with Sean's code: Cannot infer contextual bas in reference to member 'horizontal' & Value of type 'Circle' has no member 'containerRelativeFrame'... bummer I really wanted to play around with this.
@seanallen
@seanallen 7 місяців тому
Are you targeting iOS 17 for your project? These new modifiers are only available in iOS 17 and above.
@who.is.dayton-ch9fb
@who.is.dayton-ch9fb 7 місяців тому
Hey@@seanallen I really appreciate the quick response! The highest version I am able to set the minimum deployment is 16.4. Do I need to create a new target in my project?
@seanallen
@seanallen 7 місяців тому
You’ll need to be on Xcode 15 I believe.
@umarparacha653
@umarparacha653 7 місяців тому
Now most apps build with swif and swiftui instead of uikit ...please slove this quieres
@seanallen
@seanallen 7 місяців тому
Not sure what you are talking about. This is a SwiftUI tutorial.
@umarparacha653
@umarparacha653 7 місяців тому
@@seanallen i said new apps now buid with Swiftui ....Not use the Uikit
@Stricken174
@Stricken174 4 місяці тому
It looks cool, but SwiftUI is not popular in production. Targets are still below 15, so you dont have that fansy staff, you may do it yourself or die)))
@seanallen
@seanallen 4 місяці тому
The minimum deployment target varies wildly depending on the project. That's not a reason to dismiss SwiftUI in my opinion.
@Stricken174
@Stricken174 4 місяці тому
​@@seanallen Currently i'm working for a big enterprise, that doesnt take risks) It will take years to change something( We have only one screen made with SwiftUI (I'd made it despite everyone having doubts)​ So i'm not dismissing it at all)
@svetoslavpopov2255
@svetoslavpopov2255 4 місяці тому
⁠@@Stricken174it was the same as it was with Swift in the beginning, but slowly SwiftUI will become a thing. Slowly, but surely we are moving towards iOS 16-17 becoming the minimal target version and after that there will be absolutely zero reason not to go to SwiftUI. Currently it is worth trying it even with lower versions. My project is from iOS 14+ and even though I can’t use the shiniest things yet, there is still so much I can use. For everything else I can still create a UIView and throw in some NSLayoutConstraints
@seanallen
@seanallen 4 місяці тому
Well said.
@yega3k
@yega3k Місяць тому
I started my (side) project with iOS 17 as target and realized it won’t work on iPhone X and below. But it’s too late now. I’m not going back to Combine!
@GoeHybrid
@GoeHybrid 7 місяців тому
What's not amazing is that most of us cannot raise the min ios version to 17.
@adamm3122
@adamm3122 7 місяців тому
I always look at it as now I can start adding in functionality introduced in iOS 15.
@seanallen
@seanallen 7 місяців тому
But at least you know what's coming soon...
@victorriurean
@victorriurean 7 місяців тому
@seanallen
@seanallen 7 місяців тому
👋
Intro to SwiftData - Model, Container, Fetch, Create, Update & Delete
27:13
SwiftUI Tooltips with TipKit (Popover & Inline Tips)
16:17
Sean Allen
Переглядів 11 тис.
Первая поломка Scirocco! Балацко попал на мотор.
1:13:12
когда одна дома // EVA mash
00:51
EVA mash
Переглядів 9 млн
NavigationStack - SwiftUI Programmatic Navigation - iOS 16
20:20
Sean Allen
Переглядів 62 тис.
Every CSS Animation property
9:26
chunkydotdev
Переглядів 40 тис.
Enhancements to ScrollView in iOS 17
23:43
Stewart Lynch
Переглядів 6 тис.
Swift Closures Explained
14:23
Sean Allen
Переглядів 56 тис.
Bring 3D to your App: Developing Native iOS Apps with Spline
21:30
Brian Advent
Переглядів 3 тис.
Swift Algorithms - Faster, Cleaner Code. (Chunked Example)
13:48
Sean Allen
Переглядів 16 тис.
SwiftUI Bar Chart with Customizations | Swift Charts
21:26
Sean Allen
Переглядів 23 тис.
Это новые российские SSD! Ну почти… 🙂
1:00
Как установить Windows 10/11?
0:56
Construct PC
Переглядів 1,6 млн
Vortex Cannon vs Drone
20:44
Mark Rober
Переглядів 13 млн