5

ここでSDWeb画像を使用しています

そしてこれらの私のコード:

        UIImageView *sellerImage = [[UIImageView alloc]init];            
[sellerImage setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:productPicture]]
                        placeholderImage:[UIImage imageNamed:@"placeholder.png"]];

ただし、常にプレースホルダー画像を読み込むのはURLからの画像だけではありません。ブロックを使用して、画像が読み込まれるかどうかを確認し、成功ブロックに入ります。つまり、SDWebImageはURLから画像を読み込むことができますが、プレースホルダーの画像は変更されません。

これらは私がブロックを使おうとしたときのコードです:

            [sellerImage setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:productPicture]]
                placeholderImage:[UIImage imageNamed:@"placeholder.png"]
                         success:^(UIImage *image, BOOL cached) 
        {
            NSLog(@"success Block");
        }
                         failure:^(NSError *error) 
        {
            NSLog(@"failure Block");
        }];

私が言ったように、それは常に成功ブロックに入ります。つまり、URLから画像をロードできますが、プレースホルダー画像は変更されません。

これらは私の問題の画面です。

ここに画像の説明を入力してください

4

3 に答える 3

3

次も試してみてください

[sellerImage setImageWithURL:[NSURL URLWithString:[productPicture stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]
                placeholderImage:[UIImage imageNamed:@"placeholder.png"]
                         success:^(UIImage *image, BOOL cached) 
        {
            dispatch_async(dispatch_get_main_queue(), ^{
                sellerImage.image = image;
            });
            NSLog(@"success Block");
        }
                         failure:^(NSError *error) 
        {
            NSLog(@"failure Block");
        }];
于 2012-11-17T22:27:00.493 に答える
1

次を試してください

UIImageView *sellerImage = [[UIImageView alloc]init];            
[sellerImage setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:
[productPicture stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
于 2012-11-17T22:14:59.007 に答える
0

プレースホルダー画像を適切に割り当てます。私に関する問題は、互いに一致しない間違った画像拡張子、つまりplaceholder.jpegとpalceholder@2x.jpgにありました。

于 2015-11-03T09:21:35.283 に答える