我想在我的iphone应用程序中获取联系人姓名,地址簿中的照片。我能够获得联系人并存储到数组中。但现在知道如何获取联系人照片。我使用的代码如下。
ABAddressBookRef ab=ABAddressBookCreate();
NSArray *arrTemp=(NSArray *)ABAddressBookCopyArrayOfAllPeople(ab);
arrContact=[[NSMutableArray alloc] init];
for (int i=0;i<[arrTemp count];i++)
{
NSMutableDictionary *dicContact=[[NSMutableDictionary alloc] init];
NSString *str=(NSString *) ABRecordCopyValue([arrTemp objectAtIndex:i], kABPersonFirstNameProperty);
@try
{
[dicContact setObject:str forKey:@"name"];
}
@catch (NSException * e) {
[dicContact release];
continue;
}
[arrContact addObject:dicContact];
NSLog(@"mohit inside the loop");
[dicContact release];
}
我想在该数组(arrContacts)中获取联系人照片和名称,然后在表格中显示它们。请给我指导。谢谢
答案 0 :(得分:6)
在ARC模式下
NSData *imgData = (__bridge_transfer NSData *) ABPersonCopyImageDataWithFormat(record, kABPersonImageFormatThumbnail);
其中record是类的对象
ABRecordRef
希望这有帮助
答案 1 :(得分:4)
在iOS 4+中,您可以通过以下方式获取图像:
ABPersonCopyImageDataWithFormat(person, kABPersonImageFormatOriginalSize);
或
ABPersonCopyImageData(person);