SwiftUI Cookbook
eBook - ePub

SwiftUI Cookbook

A guide to solving the most common problems and learning best practices while building SwiftUI apps, 2nd Edition

Giordano Scalzo, Edgar Nzokwe

Condividi libro
  1. 616 pagine
  2. English
  3. ePUB (disponibile sull'app)
  4. Disponibile su iOS e Android
eBook - ePub

SwiftUI Cookbook

A guide to solving the most common problems and learning best practices while building SwiftUI apps, 2nd Edition

Giordano Scalzo, Edgar Nzokwe

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

Unleash the power of declarative programming in SwiftUI by building cross-platform Apple apps for iOS 15, macOS, and watchOS using Swift 5.5, Xcode 13, and SwiftUI 3

Key Features

  • Apply the declarative programming paradigm to build cross-platform UIs for Apple devices
  • Learn to integrate UIkit, Core Data, Firebase, and Sign in with Apple with SwiftUI
  • Adopt the new SwiftUI 3.0 features to build visually appealing UIs speedily

Book Description

SwiftUI provides an innovative and simple way to build beautiful user interfaces (UIs) for all Apple platforms, from iOS and macOS through to watchOS and tvOS, using the Swift programming language. In this recipe-based cookbook, you'll cover the foundations of SwiftUI as well as the new SwiftUI 3 features introduced in iOS 15 and explore a range of essential techniques and concepts that will help you through the development process.

The cookbook begins by explaining how to use basic SwiftUI components. Once you've learned the core concepts of UI development, such as Views, Controls, Lists, and ScrollViews, using practical implementations in Swift, you'll advance to adding useful features to SwiftUI using drawings, built-in shapes, animations, and transitions. You'll understand how to integrate SwiftUI with exciting new components in the Apple development ecosystem, such as Combine for managing events and Core Data for managing app data. Finally, you'll write iOS, macOS, and watchOS apps by sharing the same SwiftUI codebase.

By the end of this SwiftUI book, you'll have discovered a range of simple, direct solutions to common problems encountered when building SwiftUI apps.

What you will learn

  • Explore various layout presentations in SwiftUI such as HStack, VStack, LazyHStack, and LazyVGrid
  • Create widgets to quickly display relevant content at glance
  • Get up to speed with drawings in SwiftUI using built-in shapes, custom paths, and polygons
  • Discover modern animation and transition techniques in SwiftUI
  • Add user authentication using Firebase and Sign in with Apple
  • Manage concurrency with Combine and async/await in SwiftUI
  • Solve the most common SwiftUI problems, such as integrating a MapKit map, unit testing, snapshot testing, and previewing layouts

Who this book is for

This book is for mobile developers who want to learn SwiftUI as well as experienced iOS developers transitioning from UIkit to SwiftUI. The book assumes knowledge of the Swift programming language. Knowledge of object-oriented design and data structures will be useful but not necessary. You'll also find this book to be a helpful resource if you're looking for reference material regarding the implementation of various features in SwiftUI.

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
SwiftUI Cookbook è disponibile online in formato PDF/ePub?
Sì, puoi accedere a SwiftUI Cookbook di Giordano Scalzo, Edgar Nzokwe in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Computer Science e Programming. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

Informazioni

Anno
2021
ISBN
9781803240435
Edizione
2
Categoria
Programming

Chapter 1: Using the Basic SwiftUI Views and Controls

SwiftUI was launched during Apple's Worldwide Developer Conference (WWDC) in June 2019. Since then, its popularity has kept increasing as it has been adopted more into the Apple developer community. Apple also releases updates every year, adding new and exciting capabilities to SwiftUI.
SwiftUI ditches UIKit concepts such as Auto Layout for an easier-to-use declarative programming model. It allows the fast and easy creation of applications that work across Apple platforms (iOS, iPadOS, and macOS).
Are you still wondering whether you should start learning SwiftUI? Here are a few reasons to convince you:
  • SwiftUI apps can work alongside UIKit apps: You can slowly convert your app's user interface (UI) to SwiftUI, one screen at a time.
  • Industry adoption: SwiftUI adoption among most companies will take time. Getting a head start and learning SwiftUI now improves your future marketability. SwiftUI today is like the early days of Objective-C versus Swift, where most companies still used Objective-C; now, almost everyone has switched to Swift.
  • Low learning curve: SwiftUI offers a low learning curve for people who have used declarative programming before. It is also a great way to start learning declarative programming for those with little-to-no experience.
  • Live previews increase speed: SwiftUI live previews provide an instant preview of your UI. You can quickly prototype apps and make any changes required by clients. This greatly improves the speed of UI development.
This book is designed to be your SwiftUI reference material. Each project focuses on a single concept so that you can understand each concept thoroughly, and then combine multiple concepts to build amazing applications.
In this chapter, we will learn about views and controls, SwiftUI's visual building blocks for app interfaces. The following recipes will be covered:
  • Laying out components
  • Dealing with text
  • Using images
  • Adding buttons and navigating with them
  • Beyond buttons – using advanced pickers
  • Applying groups of styles using ViewModifier
  • Separating presentation from content with ViewBuilder
  • Simple graphics using San Francisco Symbols (SF Symbols)
  • Integrating UIKit into SwiftUI—the best of both worlds
  • Adding SwiftUI to an existing app
  • Exploring more views and controls (iOS 14+)

Technical requirements

The code in this chapter is based on Xcode 13.0. You can download and install Xcode from the App Store.
All the code examples for this chapter can be found on GitHub at https://github.com/PacktPublishing/SwiftUI-Cookbook-2nd-Edition/tree/main/Chapter01-Using-the-basic-SwiftUI-Views-and-Controls.

Laying out components

SwiftUI uses three basic layout components, VStack, HStack, and ZStack. Use the VStack view to arrange components in a vertical axis, HStack to arrange components in a ...

Indice dei contenuti