A collection of content representing curated asset and text elements.


class PHProjectSection : NSObject


Each project section contains at least one PHProjectSectionContent object, which represents a suggested curation of the content. The number of sections included in PHProjectInfo varies depending on the source used to initialize the project:

  • A Memory. There will be one cover section with a key asset element and title, as well as a section containing multiple levels of curation, mirroring the Show Summary and Show More options of the Memory in Photos.

  • A single Album. The number of sections depends on the Album size. A small Album yields a single section, but an Album with a large quantity of photos is broken down into sections based on Moments in the user's Photo Library.

  • An existing Apple Book, Card, or Calendar. The sections will match the pagination in that project; for example, a book will break down into one section per page.


Determining Section Contents

var title: String

The optional section title.

var sectionContents: [PHProjectSectionContent]

An array containing PHProjectionSessionContent objects.

class PHProjectSectionContent

An object containing section elements and layout information for a single level of curation.

Defining Section Type

var sectionType: PHProjectSection.SectionType

The intended usage of the section: cover, content, or auxiliary.

enum PHProjectSection.SectionType

The intended usage of the section: cover, content, or auxiliary.


Inherits From

See Also

macOS Photos Project Extensions

Creating a Slideshow Project Extension for Photos

Augment the macOS Photos app with extensions that support project creation.

class PHProject

A representation of a Photos app project extension.

class PHProjectInfo

Information about the project extension.

class PHProjectExtensionContext

An object that provides Photos project extensions with access to the underlying project, as well as to the user's photo library for editing.

class PHProjectElement

The superclass for all element objects.

class PHProjectRegionOfInterest

A representation of a region of interest in a photo asset.

class PHProjectChangeRequest

A request to change asset data in a Photos project extension.

protocol PHProjectExtensionController

A protocol defining the life cycle and supported types of project extensions.

class PHCloudIdentifier

A cloud identifier for a Photos project extension.

struct PHProjectCategory

A representation of Photos project extension categories.