我正在使用SDWebImage
並抓取與新聞API中的新聞報道相關的圖像。圖像未立即在表視圖中加載
問題是,屏幕上的單元格的圖像不加載,直到我開始滾動UITableView
。一旦我滾動過一個單元格,並且它離開屏幕,一旦我回到它,圖像將最終加載。
這裏是我的(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
代碼:
if ([feedLocal.images count] == 0) {
[cell.imageView setImage:[UIImage imageNamed:@"e.png"]];
}
else {
Images *imageLocal = [feedLocal.images objectAtIndex:0];
NSString *imageURL = [NSString stringWithFormat:@"%@", imageLocal.url];
NSLog(@"img url: %@", imageURL);
// Here we use the new provided setImageWithURL: method to load the web image
__weak UITableViewCell *wcell = cell;
[cell.imageView setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@", imageURL]]
placeholderImage:[UIImage imageNamed:@"115_64.png"]
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType) {
if(image == nil) {
[wcell.imageView setImage:[UIImage imageNamed:@"115_64.png"]];
//];
}
}
];
}
任何想法,爲什麼會是這樣嗎?它只是看起來像UITableView加載時,圖像沒有被告知加載或直到滾動開始?
任何建議非常感謝,謝謝!
其清新的問題。您必須進行NSNotification調用,並且每個圖像加載後,您必須調用tableview重新加載數據以便立即顯示圖像 – AJ112
欣賞評論@ AJ112 ...您是否有代碼段,以便我可以看到什麼會看起來像我的代碼?這是有道理的,但我從來沒有做過,所以我想確保我跟着你。 – Realinstomp
在我的情況下,下載過程發生在不同的文件這就是爲什麼我使用NSNotificationCenter,但我有完全相同的問題,即圖像開始出現時滾動下來。你可以先調用[self.tableView reloadData];在您下載圖像並將其設置到imageview的位置之後。 – AJ112