如何从iPhone中的NSMutableArray中获取联系人的记录
问题描述:
我有一个字典数组的联系人详细信息。我试图在ABRecordRef
中添加该记录,但我不明白它是如何工作的。这里是我的代码:如何从iPhone中的NSMutableArray中获取联系人的记录
for (int i = 0; i <= [contactArray count]; i++)
{
ABRecordRef person = (ABRecordRef)[contactArray objectAtIndex:i];
ABAddressBookAddRecord(addressBook, group, &error);
ABAddressBookSave(addressBook, &error);
}
我想这个联系人记录添加到使用ABGroupAddMember
组。现在我怎样才能从NSMutableArray
获得记录。任何帮助将不胜感激。谢谢。
答
没有内置的功能。你将不得不创建一个空的记录,那么您可以通过字典中的所有字段,然后添加那些记录和安全这
这恼人的体力劳动...:d
我一起去Erica的ABContactHelper:https://github.com/erica/ABContactHelper
那就只有
for(NSDictionary *d in recordArray) {
ABContact *contact = [ABContact contactWithDictionary:d];
ABGroupAddMember(theGroup, contact.record);
}
如果你喜欢手动:
for(NSDictionary *d in recordArray) {
ABRecordRef person = ABPersonCreate();
for(NSString *k in d.allKeys) {
id v = d[k];
//HERE call ABRecordSetValue with the right params depending on if the value is a NSString or NSArray or an image
}
ABGroupAddMember(theGroup, contact.record);
CFRelease(person);
}
免责声明:直列类型,但应该没问题
要字典转换为ABRecordRefs? (这就是我在这里得到的:D) – 2013-05-02 06:34:06
@ Daij-Djan是的,在字典中我有firstName,lastName,emailId,一个人的电话号码,我想添加字典中的所有值以将该联系人添加到组中。 – user2336918 2013-05-02 06:41:05
也许这个解决问题有帮助 - [复制NSDictionary到NSArray](http://*.com/questions/5788694/copying-nsdictionary-to-nsarray) – Vikr 2013-05-02 06:46:59