我正在使用此处定义的谓词:
How can I pick a contact phone number in iOS? .
contactsPicker.predicateForEnablingContact = NSPredicate(format:"phoneNumbers.@count > 0")
contactsPicker.predicateForSelectionOfContact = NSPredicate(format: "phoneNumbers.@count == 1")
contactsPicker.displayedPropertyKeys = [CNContactPhoneNumbersKey]
我还定义了以下委托(delegate)方法:
func contactPicker(_ picker: CNContactPickerViewController,
didSelect contactProperty: CNContactProperty) {
print(contactProperty)
}
func contactPicker(_ picker: CNContactPickerViewController, didSelect contact: CNContact) {
print(contact)
}
我期望的行为是用户可以从多个不同的联系人中选择电话号码属性,当用户单击完成时,我会得到这些属性和联系人的列表。
不幸的是,当用户点击完成时,上面的代码会立即退出选择器。这意味着用户不能选择多个电话号码和/或多个联系人,并且只能在选择器退出之前选择一个。
如何更改它,以便它选择多个属性或联系人并在单击完成时提交?
Best Answer-推荐答案 strong>
为了选择多个联系人属性,您需要在您的委托(delegate)中定义 contactPicker:didSelectContactProperties: 而不是您在问题中提到的方法。
希望这会有所帮助!
Apple Documentation
关于ios - 在 CNContactPicker 中选择多个联系人/联系人属性,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/45840378/
|