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

Your first SwiftUI project

In this section, we will look into the process of creating a new project supporting SwiftUI. We will first look into the easiest and quickest way to create a SwiftUI project. Then, we’ll learn how to create a multi-platform project and at the end, there’s also a multi-platform exercise for you to practice.

Creating a SwiftUI project

To create an app, start by clicking on Create New Project… on the initial Welcome Xcode screen. Be warned that this part is likely to change graphically and in terms of the options presented, with newer versions of Xcode.

I will teach you how to create a basic project with an app template or a multi-platform project from scratch, but we can’t cover all the other options for all of the different kinds of projects Xcode can generate.

The following is the easiest and quickest way to create a basic project using an app template:

  1. Create an app for your desired platform by selecting Create...