WWDC24 SALE: Save 50% on all my Swift books and bundles! >>

DAY 93

Project 18, part 2

Today we’re continuing our technique project on view layout, exploring one of the most powerful layout views we have available to us: GeometryReader. This lets us read the size and position for a view at runtime, and keep reading those values as they change over time.

I realize that probably doesn’t sound terribly special, but it opens the door to a number of fascinating effects that look great and only take one or two lines of code to create. Yes, one or two – once you understand how GeometryReader works I really hope you’re able to take some time to experiment!

As the British poet William Blake once said, “the true method of knowledge is experiment,” so if you really want this stuff to stick in your head you should play around with it!

Today you have four topics to work through, in which you’ll learn about frames, coordinate spaces, GeometryReader, and more.

If you make some fun effects, try recording a video and sharing it online – it’s a great way to stay accountable, but also to show folks how far you’ve come!

Share your progress!

If you use Twitter, the button below will prepare a tweet saying you completed today, along with a celebratory graphic, the URL to this page, and the challenge hashtag. Don't worry – it won't be sent until you confirm on Twitter!

Need help? Tweet me @twostraws!


Save 50% in my WWDC sale.

SAVE 50% To celebrate WWDC24, all our books and bundles are half price, so you can take your Swift knowledge further without spending big! Get the Swift Power Pack to build your iOS career faster, get the Swift Platform Pack to builds apps for macOS, watchOS, and beyond, or get the Swift Plus Pack to learn advanced design patterns, testing skills, and more.

Save 50% on all our books and bundles!

100 Days of SwiftUI

The 100 Days of SwiftUI is a free collection of videos, tutorials, tests, and more to help you learn SwiftUI faster. Click here to learn more, or watch the video below.

Back to 100 Days of SwiftUI

Unknown user

You are not logged in

Log in or create account

Link copied to your pasteboard.