2

Objective C で画像をロードするために PFQueryCollectionViewController を取得した人はいますか?

ユーザーが最初にビューをロードすると、テキストはロードされますが、画像はロードされません。ユーザーが 2 回目にビューを読み込むと、画像が読み込まれます。理解できません。

- (PFCollectionViewCell *)collectionView:(UICollectionView *)collectionView
                  cellForItemAtIndexPath:(NSIndexPath *)indexPath
                                  object:(PFObject *)object {
    PFCollectionViewCell *cell = [super collectionView:collectionView cellForItemAtIndexPath:indexPath object:object];

    cell.textLabel.textAlignment = NSTextAlignmentCenter;
    cell.textLabel.text = object[@"name"];
    cell.imageView.file = object[@"icon"];
    // If the image is nil - set the placeholder
    if (cell.imageView.image == nil) {
        cell.imageView.image = [UIImage imageNamed:@"Icon.png"];
        [cell.imageView loadInBackground];
   }
    cell.contentView.layer.borderWidth = 1.0f;
    cell.contentView.layer.borderColor = [UIColor clearColor].CGColor;

    return cell;


}
4

1 に答える 1

0

この動作は、最初は非 nil である imageView.image と一致しています。無条件にプレースホルダーの割り当てを実行するだけです。画像がキャッシュされると、プレースホルダーは実際の画像の割り当てによって元に戻されます (何かが描画される前に)...

cell.imageView.image = [UIImage imageNamed:@"Icon.png"];
cell.imageView.file = object[@"icon"];
[cell.imageView loadInBackground];
于 2016-01-04T03:46:03.650 に答える