UIImage не отображается в UITableView - PullRequest
0 голосов
/ 04 октября 2011

У меня есть UIImageView в моем UITableViewCell, который не отображается. Я получаю изображение из адресной книги и сохраняю его как NSData, но кажется, что оно не работает.

У меня есть метод получения изображения:

if (ABPersonHasImageData(contactrec)){
        CFDataRef imageData = ABPersonCopyImageData(contactrec);
        [person setPic:(NSData *)imageData];
        CFRelease(imageData);
    }

Моя табличная ячейка имеет следующий метод, который cellPic связан с UIImageView

-(void)setCellPic:(UIImage *) pic{
    cellPic.image = pic;
}

И, наконец, у меня есть массив контактов, полный person с, и для каждой строки я делаю:

Person *persona =[contactsArray objectAtIndex:indexPath.row];
UIImage *contactImage = [UIImage imageWithData:(NSData *)[persona pic]];
[cell setCellPic:contactImage];

Когда я отлаживаю код, кажется, что у персоны есть контакт с изображением 2000 байт, но я думаю, что преобразование NSData в UIImage не очень хорошо. По крайней мере, когда я отлаживаю урегулирование setCellPic, он говорит, что cellPic.image имеет значение 0x0

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 08 октября 2011

Решено! Проблема была с методом setCellPic в ячейке таблицы. Поскольку UIImageView имел то же имя cellPic, компилятор подумал, что я вызываю установщик cellPic, но cellPic не был UIImage, это UIImageView. Поэтому я изменил название метода, и теперь он работает нормально! В любом случае, спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...