ビュー コントローラー間で非同期に画像を読み込むのに問題があります。行をクリックするとコレクション ビュー コントローラーを開く tableView コントローラーがあります。コレクション ビューが開くと、画像がインターネットからダウンロードされるため、しばらくハングします。
collectionView:cellForItemAtIndexPath: に以下のコードを入れたのですが、同期読み込みになってしまい、プログラムが遅くなってしまいます。
-(UICollectionViewCell *) collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath{
static NSString *CellIdentifier = @"CollectionCell";
CollectionCell *cell = [cv dequeueReusableCellWithReuseIdentifier:CellIdentifier forIndexPath:indexPath];
NSData *imageData = [NSData dataWithContentsOfURL:[self.theImage objectAtIndex:indexPath.row]];
cell.itemImage.image = [UIImage imageWithData:imageData];
return cell;
}
私の質問は、画像のダウンロード中にコレクションビューが空のセルをロードする (そしてダウンロード後に表示される) ようにコードを実装する場所と方法です。
グランドセントラルディスパッチを使用しようとしましたが、よくわかりませんでした。誰かが私を正しい方向に向けるのを助けることができれば、私はそれを感謝します.