我有两个tableViewControllers。第一个有一个联系人列表。另一个显示详细的人的信息。iOS无法获取人物图像
的第一tableViewController
ABAddressBookRef addressBook = ABAddressBookCreate();
ABRecordRef source = ABAddressBookCopyDefaultSource(addressBook);
NSArray *allPeople = (__bridge_transfer NSArray*)ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(addressBook, source,kABPersonSortByFirstName);
for (int i = 0; i < [allPeople count]; i++)
{
...
contactClass = [[ContactClass alloc] initWithName:name surName:surName manID:[allPeople objectAtIndex:i]];
...
}
的第二tableViewController的代码
ABRecordRef person = (__bridge ABRecordRef)contactClass.manID;
BOOL isHasImage = ABPersonHasImageData(person);
可变isHasImage甲chunck的代码块是总是假的,即使接触具有的化身。我甚至在第一个tableViewController上检查了这个,如果person有一个头像,那么它会返回true和image。
有谁知道我为什么无法获取联系人图片?
p.s. contactClass.manID
是id
的类型。它有一个正确的地址,因为ABMultiValueRef multiValue = ABRecordCopyValue((__bridge ABRecordRef)contactClass.manID, kABPersonPhoneProperty);
返回正确的值在第二个tableViewController
你认真问了一个问题,答案??? – 2016-03-14 07:41:53