【发布时间】:2015-11-20 05:12:43
【问题描述】:
我正在开发一个iOS 应用程序,我必须在其中add 联系人Address Book。
每当用户尝试添加duplicate 联系人时,我想打开Edit 联系人屏幕。
但我不知道该怎么做。目前我只能显示一条消息。
我将所有联系人列表设为:
NSArray *allContacts = (__bridge NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBookRef);
然后我将遍历它并检查是否存在。如果存在,那么我将显示一条消息,否则我会将其添加到地址簿中。
for (id record in allContacts){
ABRecordRef thisContact = (__bridge ABRecordRef)record;
if (CFStringCompare(ABRecordCopyCompositeName(thisContact),
ABRecordCopyCompositeName(pet), 0) == kCFCompareEqualTo){
//The contact already exists!
NSLog(@"contact exosts");
}
else
{
ABAddressBookAddRecord(addressBookRef, pet, nil);
ABAddressBookSave(addressBookRef, nil);
ABMultiValueAddValueAndLabel(phoneNumbers, (__bridge CFStringRef)petPhoneNumber, kABPersonPhoneMainLabel, NULL);
NSLog(@"contacts Added");
}
}
当用户尝试添加重复联系人时,如何打开以下屏幕:
我搜索了 SO 并找到以下问题,但这对我没有帮助。 Question 1 Question 2
是否可以这样做。如果可行,请任何人帮助我实现此功能。
【问题讨论】:
标签: ios objective-c abaddressbook