Display information about users’ contacts in a graphical interface. Control which contact properties are displayed in your app.


The Contacts UI framework provides controllers that facilitate displaying, editing, selecting, and creating contacts in your app.



class CNContactPicker

The CNContactPicker object displays the popover-based system interface for selecting a contact. The methods and properties of this class help you choose a contact or a contact's value, such as a phone number or email address, of a contact.

class CNContactPickerViewController

The CNContactPickerViewController class creates a controller object that manages the contacts picker view. This class allows the user to select one or more contacts (or their properties) from the list of contacts displayed in the contact view controller (CNContactViewController). The picker supports both single selection and multiselection of the contacts. The app using contact picker view does not need access to the user’s contacts and the user will not be prompted for “grant permission” access. The app has access only to the user’s final selection.

class CNContactViewController

The CNContactViewController class implements the view to display a contact. CNContactViewController can display a new contact, unknown contact, or existing contact. You must use one of the designated initializers from init(forNewContact:), init(forUnknownContact:), or init(for:) respectively.


protocol CNContactPickerDelegate

The CNContactPickerDelegate protocol describes the interface that CNContactPickerViewController delegates must adopt to respond to contact-picker user events.

protocol CNContactViewControllerDelegate

The CNContactViewControllerDelegate protocol declares the interface that CNContactViewController delegates must implement.