Book Image

An iOS Developer's Guide to SwiftUI

By : Michele Fadda
Book Image

An iOS Developer's Guide to SwiftUI

By: Michele Fadda

Overview of this book

– SwiftUI transforms Apple Platform app development with intuitive Swift code for seamless UI design. – Explore SwiftUI's declarative programming: define what the app should look like and do, while the OS handles the heavy lifting. – Hands-on approach covers SwiftUI fundamentals and often-omitted parts in introductory guides. – Progress from creating views and modifiers to intricate, responsive UIs and advanced techniques for complex apps. – Focus on new features in asynchronous programming and architecture patterns for efficient, modern app design. – Learn UIKit and SwiftUI integration, plus how to run tests for SwiftUI applications. – Gain confidence to harness SwiftUI's full potential for building professional-grade apps across Apple devices.
Table of Contents (25 chapters)
Free Chapter
1
Part 1: Simple Views
5
Part 2: Scrollable Views
8
Part 3: SwiftUI Navigation
11
Part 4: Graphics and Animation
14
Part 5: App Architecture
17
Part 6: Beyond Basics

Tools for visionOS development

To install the visionOS development system, you only need to download the optional visionOS simulator when installing Xcode. Otherwise, you can go to Xcode | Settings and select the Platforms tab. The following screenshot shows the Platforms tab in the Xcode preferences:

Figure 16.1 – Verifying that the visionOS platform is installed

Figure 16.1 – Verifying that the visionOS platform is installed

If visionOS has not been downloaded already, it will show a GET button next to its size. The visionOS simulator download is around 7 GB in size, in addition to Xcode itself. A visionOS application can contain one or more windows, spaces, and volumes. Let’s understand these further:

  • visionOS windows are SwiftUI scenes that can contain traditional 2D views and controls. They appear as floating 2D windows.
  • visionOS volumes can add 3D depth and are SwiftUI scenes that include 3D content made with RealityKit or Unity, creating user experiences that can be viewed from any...