This course is available as part of the raywenderlich.com Professional subscription. To learn more click here

iOS Photos Framework

Pro

Feb 20 2020 · Video Course (54 mins) · Intermediate

Build an app using iOS's Photos Framework, which allows the user to select multiple images from the device's photo library and creates a collage with those selected images.

4.3/5 6 Ratings

Version

  • Swift 5.1, iOS 13.2, Xcode 11.2

Build Multiple Asset Picker

Learn how to request device photo library permissions from the user, then fetch the photo library's collections when authorized.

1

In this episode, learn how to display the various image collection titles in the asset picker's table view.

2

Set up the picker's table to navigate to the various photo collections, then set up the picker's collection view to load and display the collections' photos.

3

Persist photo selections between asset picker collections such that selection checkmarks display appropriately.

4

Use PHCachingImageManager to cache the images in and adjacent to the visible scrolling window, then load the collection view's images from that cache.

5

Manipulate Assets to Generate Collages

Create a photo album for the collages (i.e. "Stitches") or fetch the album if it already exists, then set up a collection view to display that album's images.

6

Create a new photo asset with a collage of the selected images, save it to the Stitches album, then load a high quality version of the image for display.

7

"Favorite," "unfavorite" and delete images; set the photo picker's selected image set to the assets referenced in the collage's adjustment data so the user can edit the selections to update the collage.

8

Implement observers to detect changes in the device's photo library, then update the app's photo preview, table view and collection view appropriately.

9

Who is this for?

This course is for experienced developers, with at least an intermediate knowledge of Swift and iOS, who want to learn about the Photos Framework.

Covered concepts

  • Requesting photo library permissions
  • Fetching photo assets, asset collections and collection lists from device library
  • Populating table view and collection view using library's photos and albums as data source
  • Using photo image request options, ex. sort descriptors, delivery mode, network access allowed, etc.
  • Loading asset image content
  • Caching images using PHCachingImageManager
  • Creating photo albums
  • Editing assets
  • Observing & responding to photo library changes

Contributors

Comments