Я получаю изображения асинхронно с синтаксическим разбором, и я вставляю их в массив с некоторыми другими вещами.Обновить таблицуView при асинхронном обращении изображений
я вернуть этот массив, чтобы заполнить Tableview, а строка имеет UIImageView
, но некоторые изображения, которые я получаю асинхронно делаю загружался, когда я заполнить таблицу с массивом в cellForRowAtIndexPath
, поэтому, когда я первый смотреть Tableview, я получите строки с пустым изображением в ячейке, пока я не переместим прокрутку в таблицеView, так что cellForRowAtIndexPath
вызывается снова, и те изображения, которые были установлены в массиве, уже загружены.
Я получаю изображения также, если я делаю IBAction с [self.tableView reloadData];
. Я получаю изображения.
Проблема в том, что я возвращаю ячейку inmediatelly, и изображение не загружается. Я использую собственный TableViewCell. Я нашел что-то около "AsyncImageView", чтобы загрузить изображение, но я не знаю как.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//Get the game for the row
GameModel *game = [self.currentMatches objectAtIndex:indexPath.row]; //HERE i load the images
MatchCell *cell = [self.tableView dequeueReusableCellWithIdentifier:@"GameCell" forIndexPath:indexPath];
cell.userImage.image = game.avatarp1; //I set the image to the cell but isnt loaded yet
//If i do this WORKS but i get 2 times the same image (on the game and now) (its a function that i created, that seems is calling tableView or so when assigns the image to the cell, i dont understand why it works
[ParseModel getAvatarWithUser:game.p1 completionBlock:^(UIImage *avatar) {
cell.userImage.image = avatar;
}];
просто сделайте это [yourtableView reloadData]; –