Book Image

SwiftUI Projects

By : Craig Clayton
Book Image

SwiftUI Projects

By: Craig Clayton

Overview of this book

Released by Apple during WWDC 2019, SwiftUI provides an innovative and exceptionally simple way to build user interfaces for all Apple platforms with the power of Swift. This practical guide involves six real-world projects built from scratch, with two projects each for iPhone, iPad, and watchOS, built using Swift programming and Xcode. Starting with the basics of SwiftUI, you’ll gradually delve into building these projects. You’ll learn the fundamental concepts of SwiftUI by working with views, layouts, and dynamic types. This SwiftUI book will also help you get hands-on with declarative programming for building apps that can run on multiple platforms. Throughout the book, you’ll work on a chart app (watchOS), NBA draft app (watchOS), financial app (iPhone), Tesla form app (iPhone), sports news app (iPad), and shoe point-of-sale system (iPad), which will enable you to understand the core elements of a SwiftUI project. By the end of the book, you’ll have built fully functional projects for multiple platforms and gained the knowledge required to become a professional SwiftUI developer.
Table of Contents (13 chapters)

Adding watch data

A plist drives our data for this app. There is not much difference when you get data from a plist versus JSON. If I were building this app for the store, I would use a JSON feed. To make this easier, we are not going to do any of the data models together. Please open the chapter files, and you will see a folder called chapter assets, and inside of that folder, you will see Models, which will have all of the data we will need for this project. Drag and drop the files from the folder into your project now and make sure you have the extension selected.

Inside the Models folder, open the draft.plist file and you will see the following:

Figure 3.25

Figure 3.25

We have objects that we will use for our round data. We also have picks for each round, and each pick has prospect data:

Figure 3.26

Figure 3.26

Since what we will cover next is more about Swift rather than SwiftUI, I will skip breaking down the code I am writing for parsing...