iOS Photos Framework

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. By Lyndsey Scott.

3.7 (11) · 1 Review

Save for later
Comments
Share

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

Part 1: Build Multiple Asset Picker

01
Toggle description

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

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

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.

Toggle description

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

Toggle description

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

Part 2: Manipulate Assets to Generate Collages

Toggle description

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.

Toggle description

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.

"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.

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