Я пытаюсь интегрировать API AddressBookUI в мое приложение iOS 5 для отображения выбранного содержимого в виде таблицы. Мне удалось реализовать средство выбора адресной книги и настроить его таким образом, чтобы, когда пользователь выбирает человека из своей адресной книги, он заполнял метку ячейки в TableView. Я также хотел бы, чтобы он мог отображать изображение выбранного человека в той же ячейке, если оно существует, и изображение отсутствующего изображения по умолчанию, если его нет.
Я не могу понять, как сохранить имя и данные изображения в одной ячейке TableView.
У кого-нибудь есть предложения, как мне этого добиться. Я прочитал документы для разработчиков и знаю, что должен использовать команду ABPersonCopyImageDataWithFormat. Я просто не могу заставить его внедрить его в ячейку таблицы.
Вот фрагменты кода, который у меня есть:
// Store the name into memory when the user selects, then dismiss the view.
- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person
{
NSString *selectedPerson = (__bridge NSString *)ABRecordCopyCompositeName(person);
[people insertObject:selectedPerson atIndex:0];
if (ABPersonHasImageData(person) == TRUE) {
NSLog(@"Person has an image!");
} else {
NSLog(@"Person does not have an image.");
}
[self dismissModalViewControllerAnimated:YES];
[self.tableView reloadData];
return NO;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
PartyCell *cell = (PartyCell *)[tableView dequeueReusableCellWithIdentifier:@"Cell"];
cell.backgroundView = [[GradientView alloc] init];
cell.personLabel.text = [people objectAtIndex:indexPath.row];
cell.personImage.image = [UIImage imageNamed:@"missing.png"]; // THIS NEEDS TO DISPLAY THE SELECTED USERS PICTURE. CURRENTLY SHOWS A DEFAULT USER.
return cell;
}
Спасибо!