12

Your Second iOS and SwiftUI App

 3 years ago
source link: https://www.raywenderlich.com/15234721-your-second-ios-and-swiftui-app
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

List View Fundamentals

Introduction

2:27 Free

Learn what's in store for you as you build Your Second iOS and SwiftUI App. This course builds on the Your First App, and Programming in Swift courses.

List Rows

4:18 Free

A List is a View for organizing data into a scrollable column of rows, and a row can be any View! Before you can have a list, you need a reusable row.

Collectively, the properties of a book will be our data model. A book's image will be computed based on it its stored model data.

With your Book model, and a simple Image View, set up, it is time to provide a book to the view you'll be using for each of your list rows.

Lists

2:45

With enough of your app built up for it to make sense to incorporate a List, it's nearly as simple as hitting "Embed in List"!

Navigation

3:39

Use NavigationLink and NavigationView to show a new detail view after tapping on a row in the list of books.

Create a reusable view which you can use for your rows, and their detail views. The "details" will be the entirety of longer titles, and larger images.

Conclusion

0:44

Review what you're able to do with lists already, and get a couple of ideas for what you can start thinking about in order to apply SwiftUI Lists in the future.

Data Flow

In this part, you'll complete your Book type and create more interactive views. Your app will look great in both light and dark mode, too!

Use a modal sheet in your detail view to present an image picker, and bind the result to your library. Soon, your books can have cover photos!

The accent color for an app will be applied to certain views, like button labels, to achieve a desired theme.

The reason the images you're adding to your library are not showing up is because Book Images currently only display symbols. Let's fix that!

Alerts

2:53

An Alert is a good solution for helping a user avoid an unintentional loss of data. Along with the "sheet", it's another type of modal View.

Challenge time! After setting a book's image, show the user a "delete" button, which will bring up your alert from the previous episode.

Convert a Book instance into "Model Object": a reference type that comes with the power of the Identifiable protocol.

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

To complete your detail view, make use of a TextField, binding it to a book's micro-review. Then display the review in your list!

Conclusion

0:23

You've given your app a bunch of new features in this part. You can interact with your library and books from multiple places, and your UI syncs right up!

Managing Rows

In this part, you'll be adding and removing books from your library, and sorting and reorganizing them.

ForEach

4:16

A List is not only for displaying a collection of similar views. That's the job of ForEach! Employ them both in order to have more complex columns.

Create a sheet that will bring the user to a new view, where they can fill out the information for a new book to be added to their library.

Environment

13:22

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

Sections

12:29

Lists offer customizable Sections, with headers and footers as needed. You'll use a section for each of the two "readMe" options for a book.

ObjectWillChangePublisher powers ObservedObject and EnvironmentObjects in SwiftUI. Use it to propagate ObservableObject changes to collections.

Using modifiers on a ForEach, move books in your library, or delete them. An Edit Button in the navigation bar can help with both.

Menus

4:32

Set up a Menu, in the same toolbar as your Edit button, that will allow for sorting by author, title, or manually.

It's time to get the menu from the previous episode working, and finish up this app, with automatic book sorting!

Conclusion

1:29

Let's review some of what you've accomplished along the journey of creating Your Second iOS and SwiftUI App. There are more learning paths in store for you next!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK