2013-07-09 8 views
0

я нашел много ответов на проблемы, с которыми я столкнулся здесь, и хотел бы задать вопрос в первый раз (я новичок в с просьбой о помощи!)IOS Tableview Клетка

Я реализовал структура SDWebImage в проект, который использует JSON проанализированных данных для заполнения UITableViewController. Изображения успешно кэшируются, но при первом запуске приложения все изображения ячеек отсутствуют. Только когда я просматриваю вверх или вниз, и появляются строки (или когда я нажимаю их, чтобы выбрать строку), они появляются. Если я вернусь к нему, все изображения будут кэшироваться и работать нормально. Это только первый запуск, который я пропускаю все мои изображения. Я вложил то, что у меня здесь, в надежде, что кто-то может опубликовать простое решение. У меня было чувство, что это нечто второстепенное, что я должен сделать, чтобы они появились при первом запуске.

код следующим образом:

static NSString *MyIdentifier = @"Maincell"; 

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier]; 


if (cell == nil) { 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:MyIdentifier]; 
} 

UIFont *wireBold = [UIFont fontWithName:@"Helvetica" size:14.0f]; 
cell.textLabel.text = [[news objectAtIndex:indexPath.row]objectForKey:@"Title"]; 
cell.textLabel.font = wireBold; 
cell.textLabel.textColor = [UIColor blackColor]; 

UIFont *wireSub = [UIFont fontWithName:@"Sintony" size:10.0f]; 

cell.detailTextLabel.text = [[news objectAtIndex:indexPath.row]objectForKey:@"Name"]; 

cell.detailTextLabel.font = wireSub; 
cell.detailTextLabel.textColor = [UIColor grayColor]; 

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

NSString *filePath = [[news objectAtIndex:indexPath.row]objectForKey:@"Image"]; 

NSString *urlString = [NSString stringWithFormat:@"http://www.mywebhost/images/%@.png",filePath]; 

[cell.imageView setImageWithURL:[NSURL URLWithString:urlString] placeholderImage:[UIImage imageNamed:@"placeholder.png"]]; 

return cell; 

ответ

0

Вы, по крайней мере видеть placeholder.png изначально? Является ли это изображение соответствующим размером для вашей камеры? Чтение комментариев в других сообщениях, похоже, что если у вас нет изображения placeHolder, он не покажет загруженное изображение, пока таблицаView не будет перезагружена. Это согласуется с поведением, о котором вы сообщали.

+0

Спасибо за подсказку! У меня был файл в каталоге проекта, но он не добавил его, используя «Добавить файлы в» «». Теперь все работает нормально. –

+0

Большое спасибо, я работал над этим до 3:45 утра прошлой ночью и 12:30 утра сегодня, так что время, чтобы поймать сна, поскольку я жил от 4-х выстрел grande coffees! Еще раз спасибо за подсказку, в которой я нуждался. –

0

Я также рекомендую вам вывешивать фреймы JSON, такие как Sensible TableView. Структура автоматически загрузит все ваши данные JSON из вашего веб-сервиса и будет обрабатывать все отображаемые данные, включая асинхронную выборку изображений. Экономит мне много времени.

Смежные вопросы