iOS & Swift

SwiftUI by Tutorials

Build fluid and engaging declarative UI for your apps with way less coding with SwiftUI! SwiftUI by Tutorials, the complete guide to building fluid and engaging declarative UI for your apps — using less code — with SwiftUI, is now fully updated! By Sarah Reichelt, Bill Morefield, Antonio Bello & Audrey Tam.

Read for Free with the Personal Plan* * Includes this and all other books in our online library See all benefits
Buy Individually $59.99* *Includes access to all of our online reading features.
Leave a rating/review
Download materials
Buy paperback—Amazon Comments
Save for later
Share

Who is this for?

This book is for intermediate iOS developers who already know the basics of iOS, and who wish to know everything there is to know about SwiftUI. It starts with a basic introduction of the toolkit and its features, with later chapters teaching you more complex concepts like testing and animations.

Covered concepts

  • Getting started with Swift UI
  • Diving Deeper into SwiftUI
  • Testability
  • Controls & User Input
  • State and Data Flow
  • Gestures
  • Accessibility
  • Navigation
  • Lists
  • Grids
  • Drawing Custom Graphics & Using Animations
  • Animations
  • macOS
  • Testing & Debugging
Build fluid and engaging declarative UI for your apps — using less code — with SwiftUI!

SwiftUI by Tutorials is designed to help you learn how to transition from the “old way” of building your app UI with UIKit, to the “new way” of building responsive UI with modern declarative...

more

Before You Begin

This section tells you a few things you need to know before you get started, such as what you’ll need for hardware and software, where to find the project files for this book, and more.

Section I: Diving Into SwiftUI

Start your SwiftUI journey with the foundations you need.

1
Toggle description
In this chapter, you'll get an overview of the book as a whole, as well as the apps you will be building as you learn the fundamentals of SwiftUI!
2
Toggle description
Get started with SwiftUI! Learn about the basic terminology, and discover the power of building your interface directly in the preview canvas. Check how SwiftUI makes declarative development easy and straightforward, and how you can drag and drop as you used to do with storyboards.
3
Toggle description
SwiftUI's declarative style makes it easy to implement eye-catching designs. You can create reusable modifiers to unify your design. In this chapter, you'll implement a neumorphic Figma design for RGBullsEye.
4
Toggle description
We all know how important testing is in modern application development. See how to apply UI Testing to your SwiftUI apps in this very simple, yet powerful course.

Section II: Building Blocks of SwiftUI

Build on what you have learned in Section I to begin using SwiftUI in more complex and advanced apps.

Toggle description
Learn how to add and configure different SwiftUI controls within your apps. Discover modifiers in a practical way and how they can be shared across controls or used individually. Get an introduction to container views and how to use them with SwiftUI.
Toggle description
Learn about some of the main and most used controls in user interfaces such as TextFields, Buttons, Toggles, Sliders and Steppers, and how to use them with SwiftUI.
Toggle description
Learn the powerful capabilities of vertical and horizontal stacks. See how easy it is to apply them to your app layout and to nest them to generate almost any possible combination. Stacks are back stronger than before and will for sure become a game-changer in SwiftUI.

Section III: State & Data Flow

Learn how your user interface reacts to data flow and state changes.

Toggle description
Learn how to bind data to the UI, about reactive updates to the UI through state management, and in-depth usage of the attributes related to SwiftUI.
Toggle description
Learn how to bind data to the UI, about reactive updates to the UI through state management, and in-depth usage of the attributes related to SwiftUI.
Toggle description
In this chapter, you will expand your knowledge by learning more advanced input controls like calendar and color pickers. You will also get to know how to persist the information with an overview of App Storage.
Toggle description
Learn how to trigger updates on the interface, including how to easily test a SwiftUI interface, how to manage the flow of screens throughout a complex app, and how to deal with gestures, including the development of a custom gesture.
Toggle description
Learn how to navigate your app with VoiceOver on an iOS device and use the SwiftUI Accessibility API attributes to improve your app's accessible UI. You'll add labels that provide context for UI elements and improve VoiceOver information by reordering, combining or ignoring child elements.

Section IV: Navigation & Data Display

Move through your app screens with SwiftUI and discover how to display data in them.

Toggle description
You will learn about different methods of allowing your user to navigate between views in your app, creating a navigation hierarchy, and using tabbed navigation to display information.
Toggle description
Displaying lists of data is a must in almost any app. Here you will learn how to deal with all sorts of lists to get the best out of them.
Toggle description
In this chapter you'll explore the new grid functionality in SwiftUI and use it to create more flexible and complex layouts with less efforts than using stacks.
Toggle description
Sometimes you might need to show (or not) a view depending on certain conditions. Think of an alert message, for example. You can use them to focus the users' attention and request immediate feedback from them.

Section V: UI Extensions

Push forward your SwiftUI knowledge with complex interfaces implementing animations and custom graphics.

Toggle description
Learn how to draw with the use of paths, shapes and geometry. Follow along to design your own elements.
Toggle description
Learn the basic concepts for animating views using SwiftUI. Learn how to apply animations to view transitions, how to animate state changes, and how to combine and chain those animations.
Toggle description
In this chapter, you will learn how to develop more complex interfaces. Get out of your comfort zone and dive into more advanced concepts that will allow you to generate almost any UI you can imagine. You’ll learn the limitations you may find while developing advanced SwiftUI interfaces.

Section VI: SwiftUI for macOS

Learn how to implement all you know of SwiftUI in macOS desktop applications.

Toggle description
Learn how to create a document-based Mac app. Understand how to handle different file types and how to use a variety of standard Mac UI elements.
Toggle description
Start with an existing iOS app and learn how to re-use code, views and assets for creating a macOS app. Find out what works as is, and what needs to be changed for the Mac.