【发布时间】:2016-11-14 09:39:50
【问题描述】:
这是我获取设备联系人并保存到MutableArray的代码。
但我需要为所有联系人单独获取recordID,并将其保存到同一个数组中以供进一步使用。 (例如,使用recordId 删除联系人)。
请帮帮我,我被困了 4 天。
[contactStore enumerateContactsWithFetchRequest:request error:nil usingBlock:^(CNContact* __nonnull contact, BOOL* __nonnull stop){
if( contact.phoneNumbers)
phoneNumber = [[[contact.phoneNumbers firstObject] value]];
if( contact.emailAddresses)
emailAddress = [[contact.emailAddresses firstObject] value];
contactValue=[[NSMutableDictionary alloc] init];
[contactValue setValue:phoneNumber ?:@"" forKey:@"phoneNumber"];
[contactValue setValue:emailAddress ?:@"" forKey:@"emailAddress"];
[contactValue setObject:contact.identifier forKey:@"phoneIdentifier"];
[contactValue setObject:contact.givenName ?:@"" forKey:@"firstName"];
[contactValue setObject:contact.familyName ?:@"" forKey:@"lastName"];
[_totalContact addObject:contactValue];
}]
【问题讨论】:
-
你卡在哪里了?你不能做什么? “保存到同一个数组中以供进一步使用”是什么意思?
-
我想删除选定的联系人。你知道如何删除选中的联系人吗?
-
看看下面我的回答。我自己验证了这段代码,它运行良好。
标签: ios objective-c iphone cncontact cncontactstore