PhotosUI provides user interface components for working with a person's photo library on iOS, macOS, tvOS, watchOS, and visionOS. Present a PHPickerViewController, configured through PHPickerConfiguration and PHPickerFilter, to let people choose photos and videos without your app requesting full library access, and receive their choices as PHPickerResult values. Display motion and audio captured in Live Photos with PHLivePhotoView, and use the PhotosPickerItem and PhotosPickerStyle types to surface photo selection. For photo-editing extensions, the PHProject types, including PHProjectExtensionController and PHProjectInfo, describe a project's sections, elements, and assets, while PHSharedAlbumCreationViewController and its companion controllers support creating and customizing shared albums.
Photo Picker 8
Present a privacy-preserving picker that lets people choose photos and videos without granting full library access.
- ClPHPickerViewControllermacOS 13+A view controller that presents a privacy-preserving interface for choosing photos and videos from the photo library.
- StPHPickerConfigurationA configuration for `PHPickerViewController`.
- StPHPickerFilterA filter that restricts which types of assets `PHPickerViewController` can show.
- StPHPickerResultA user selected asset from `PHPickerViewController`.
- StPHPickerCapabilitiesmacOS 14+Constants that specify one or a set of \c PHPickerViewController capabilities.
- StPHPickerMetadataOptionsmacOS 27+Constants that specify metadata options for \c PHPickerViewController.
- StPHPickerModeAn enum that determines the mode of `PHPickerViewController`.
- StPHPickerSearchTextA search text for `PHPickerViewController`.
Picker Configuration Options 2
Enumerations that control selection behavior and asset representation for the photo picker.
- EnPHPickerConfigurationSelectionmacOS 13+An enum that determines how \c PHPickerViewController handles user selection.
- EnPHPickerConfigurationAssetRepresentationModemacOS 13+A mode that determines which representation \c PHPickerViewController should provide for an asset given a type identifier, if multiple representations are available.
SwiftUI Photos Picker 3
Types that surface photo selection and represent chosen items in SwiftUI.
- StPhotosPickerItemAn item that can be provided to or provided by the Photos picker.
- StPhotosPickerStyleA value that determines the style of the Photos picker.
- StPhotosPickerSelectionBehaviorA value that determines how the Photos picker handles user selection.
Live Photo Display 3
Display the motion and audio captured in a Live Photo and control its playback and layout.
- ClPHLivePhotoViewmacOS 10.12+A view that displays the motion and audio captured in a Live Photo.
- EnPHLivePhotoViewPlaybackStylemacOS 10.12+Constants that specify the style used to play back a Live Photo.
- EnPHLivePhotoViewContentModemacOS 10.12+Constants that specify how a Live Photo view scales its content to fit.
Shared Albums 6
View controllers and configuration types for creating, posting to, and customizing shared albums.
- ClPHSharedAlbumCreationViewControllermacOS 27+@abstract This class is used to present the shared album creation view from AppKit-based view controllers.
- ClPHSharedAlbumCustomizationViewControllermacOS 27+@abstract This class is used to present the shared album customization view from AppKit-based view controllers.
- ClPHSharedAlbumPostingViewControllermacOS 27+@abstract This class is used to present a view for posting assets to a shared album from AppKit-based view controllers.
- StPHSharedAlbumCreationConfigurationAn object used to configure a `PHSharedAlbumCreationViewController`.
- StPHSharedAlbumCreationResultThe result of a user creating a shared album.
- EnPHSharedAlbumCreationSharingPolicymacOS 27+The sharing policy for creating shared albums.
Project Extensions 4
Protocols and context that define the entry point and life cycle of a photo-editing project extension.
- PrPHProjectExtensionControllermacOS 10.13+The principal view controller for any Photos Project Extension must conform to the PHProjectExtensionController protocol.
- ClPHProjectExtensionContextmacOS 10.13+When a Photos project extension is initialized, it is handed a PHProjectExtensionContext object.
- PrPHProjectTypeDescriptionDataSourcemacOS 10.14+A protocol that supplies the project type descriptions an extension supports.
- PrPHProjectTypeDescriptionInvalidatormacOS 10.14+A protocol that signals when an extension's project type descriptions need to be refreshed.
Project Structure 4
Objects that describe a project's information, sections, and content.
- ClPHProjectInfomacOS 10.13+A PHProjectInfo object is created by Photos and passed along with a PHProjectExtensionContext any time Photos
- ClPHProjectSectionmacOS 10.13+A PHProjectSection object represents a collection of content for the project including asset elements and text elements.
- ClPHProjectSectionContentmacOS 10.13+A PHProjectSectionContent object contains all the elements and suggested layout information for a specific
- ClPHProjectRegionOfInterestmacOS 10.13+In PHProjectAssetElement objects, an array of PHProjectRegionOfInterest objects may be provided.
Project Elements 5
The individual element types that make up a project's sections.
- ClPHProjectElementmacOS 10.13+PHProjectElement is the superclass for all element objects. It is never directly used, but defines the shared
- ClPHProjectAssetElementmacOS 10.13+A PHProjectAssetElement object represents a media asset within a PHProjectSectionContent.
- ClPHProjectTextElementmacOS 10.13+A PHProjectTextElement object represents formatted, positioned text that should be considered
- ClPHProjectJournalEntryElementmacOS 10.13+A PHProjectJournalEntryElement object represents auxilary, date specific information that may be interesting
- ClPHProjectMapElementmacOS 10.14+A PHProjectMapElement object representing a map with annotations.
Project Types and Categories 3
Types that classify a project and describe the kinds of projects an extension supports.
- StPHProjectTypeExtensible enumerator for PHProjectType. See PHProjectExtensionController.h for more information.
- StPHProjectCategoryExtensible enumerator for PHProjectCategory.
- ClPHProjectTypeDescriptionmacOS 10.13+A PHProjectTypeDescription object represents one project type choice in the project picker that is presented
Structures 1
- StPhotosPickerA control that allows a user to choose photos and/or videos from the photo library.
Protocols 3
- PrPHContentEditingControllermacOS 10.11+
- PrPHLivePhotoViewDelegatemacOS 10.12+
- PrPHPickerViewControllerDelegateA set of methods that the delegate must implement to respond to `PHPickerViewController` user events.