Я пытаюсь использовать CNContactPickerViewController и продолжаю сталкиваться с проблемами, связанными с выбором нескольких свойств из одного контакта.
Основное отображение средства выбора
let contactStore = CNContactStore()
override func viewDidLoad() {
super.viewDidLoad()
self.askForContactAccess()
self.displayContacts()
}
func displayContacts(){
let contactPicker = CNContactPickerViewController()
contactPicker.delegate = self
self.present(contactPicker, animated: true, completion: nil)
}
это отображает адресную книгу после того, как пользователь дает разрешение (код есть, но не показывал его выше)
Теперь то, что я хотел бы сделать, это когда пользователь выбирает контакт, мы переходим в представление сведений о контакте (это происходит в настоящее время), но когда я пытаюсь использовать делегат
func contactPicker(_ picker: CNContactPickerViewController, didSelectContactProperties contactProperties: [CNContactProperty])
Мне представлен вид выбора контактов, где я могу выбрать несколько контактов. Я не против попытаться расширить представление сведений о контакте, чтобы я мог выбирать несколько свойств, но я даже не знаю, как к нему подключиться.
Я могу создать полностью настраиваемое табличное представление и выбрать там свойства, но, поскольку Apple создала хорошее представление сведений о контактах, я бы предпочел использовать его.
CNContactPickerViewController#displayedPropertyKeys
свойствами, которые вы хотите отображаться до того, как средство выбора отобразит лист свойств для определенного контакта - person MadProgrammer   schedule 11.05.2018