0
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:imageURL]]];

上記のコードを使用して確認します

if (image)
    return image;
else
{
    NSLog(@"no image on URL");
    return nil;
}

しかし、有効な URL から画像を取得できない場合があります (めったにありません)。URL は 100% 有効です。

通常、画像の読み込みには 1 秒近くかかりますが、画像を読み込めない場合は、処理にさらに時間がかかります (20 ~ 200 秒)。そして、「URLに画像がありません」と表示されます。

URL から画像を取得するより良い方法はありますか? 1 秒で「URL に画像がありません」と表示されてから、長い間待機したいのです。

PS私の下手な英語で申し訳ありません

4

1 に答える 1

1

を使用することは非常にまれですdataWithContentsOfURL:。これはブロッキング呼び出しであるため、バックグラウンド スレッドが必要です。また、柔軟性がなく、適切なエラーが返されません (これが発生している問題です)。

URL ローディング システム プログラミング ガイドを参照してください。NSURLConnection一般に、この種の作業には非同期を構成する必要があります。多くのネットワーク操作を行っている場合は、多くの複雑さを処理するMKNetworkKitAFNetworkingなどのフレームワークを検討することをお勧めします。

于 2012-05-10T05:27:22.047 に答える