SwiftUI Fundamentals

An introduction to building iOS user interfaces with SwiftUI! Learn about SwiftUI Views and modifiers, common SwiftUI controls, fundamental layout tools, navigation and data flow, and how to make the most of SwiftUI previews. By Josh Steele.

4 (10) · 2 Reviews

Download materials
Save for later
Comments
Share

Learning path

This is part of the iOS User Interfaces with SwiftUI learning path. View path.

Who is this for?

This course will be most helpful for beginner to intermediate iOS developers who are familiar with Swift and have some experience in iOS development. For students who have finished the iOS and SwiftUI for Beginners learning path, this course can help you review SwiftUI concepts at a faster pace before you move on to more advanced SwiftUI topics.

Covered concepts

  • SwiftUI View protocol
  • Common SwiftUI controls
  • Previews
  • SwiftUI Layout with Stacks
  • ScrollView
  • ForEach & List
  • NavigationView
  • NavigationStack
  • Sheet & Popover
  • Property wrappers
  • View builders
  • SwiftUI Environment
  • SwiftUI Bindings
  • Combine: Published and Observable Objects

Part 1: SwiftUI Views

01
Toggle description

In this introductory episode, find out a bit about SwiftUI in general and what you can learn from this course.

Toggle description

The View protocol is the foundational building block of SwiftUI. Get a SwiftUI app running and try out some of SwiftUI’s basic components, built on View.

Modifiers 5:06
Toggle description

Modifiers can change the appearance and functionality of your SwiftUI views. Find out how they work and how to chain them together.

Toggle description

In your first hands-on challenge, practice everything you’ve learned about views and modifiers, and try out a few new SwiftUI controls.

Toggle description

Take a deep-dive into what’s going on with the state attribute and how it operates under the hood when binding to your components.

Toggle description

Take a deep-dive into what’s going on with the state attribute and how it operates under the hood when binding to your components.

Toggle description

Learn how to control the layout of multiple views by grouping them together with HStacks and VStacks.

Toggle description

ForEach & Lists make it a breeze when iterating over a collection of data to produce similar SwiftUI Views. All you need is a unique ID for each element.

Toggle description

Test your understanding of layout with stacks, and your command of ForEach, in this hands-on challenge.

Part 2: Navigation & Data Flow

Toggle description

Take in a high-level overview of navigation and data flow in SwiftUI and find out what you’ll learn in this part of the course.

Toggle description

Navigating from one part of your app to another has never been easier thanks the NavigationView component. Here you’ll get started with moving around your apps.

Toggle description

NavigationStacks supercharge your app’s navigation abilities, allowing you to navigate to different views for different selected data types.

Toggle description

In this episode, you will learn how to present data in a modal view, which displays on top of your existing on screen view.

Toggle description

In this hands-on challenge, practice everything you have learned about navigation and state in a SwiftUI app.

Toggle description

@State only works with value types, but it does have a companion specifically for reference types: @StateObject.

Toggle description

Combine makes it easy to take an object, observe changes to its properties and react to those changes, in SwiftUI.

In this hands-on challenge, practice everything you have learned about @StateObject and @ObservableObject, including which one to use for a given circumstance!

Toggle description

An environment is a storage container for potentially any information that multiple views need to function.

Conclusion 0:40
Toggle description

In the conclusion to this course, review what you’ve learned and find out where you can go to learn more about making apps with SwiftUI.

Up next

iOS & Swift
SwiftUI: Layout & Interfaces
Learn the fundamentals of layout in SwiftUI. Lazy Stacks andGrids, Scroll View Readers, Alignment, ZStacks, and GeometryReaders are the main topics.

Instructors

Contributors

Josh Steele

Instructor

Ehab Amer

Tech Editor

Adriana Kutenko

Illustrator

Over 300 content creators. Join our team.