使用 时peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person
,将显示包含所有联系人信息的视图。我见过只显示选定信息的应用程序(例如电话号码)。
我怎样才能做到这一点?我只想显示联系人的姓名和电话号码。
非常感谢!
使用 时peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person
,将显示包含所有联系人信息的视图。我见过只显示选定信息的应用程序(例如电话号码)。
我怎样才能做到这一点?我只想显示联系人的姓名和电话号码。
非常感谢!
这很简单。我自定义 ABPeoplePickerNavigationController 只显示电子邮件地址。
代码如下所示:
ABPeoplePickerNavigationController *peoplePicker = [[ABPeoplePickerNavigationController alloc] init];
[peoplePicker setPeoplePickerDelegate:self];
[peoplePicker setDisplayedProperties:[NSArray arrayWithObject:[NSNumber numberWithInt:kABPersonEmailProperty]]];
您可以在此处找到可用属性的列表。
我不确定你是否可以,
您可以这样做来获取地址簿的人员列表:
// get the default address book.
ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef allPeople = ABAddressBookCopyArrayOfAllPeople(addressBook);
然后创建您自己的自定义选择器视图,仅显示您想要的信息。
在 Swift 中,您只需执行此操作。
var people = ABPeoplePickerNavigationController()
people.peoplePickerDelegate = self
// 3 is for Phone Number
people.displayedProperties = [3]