NSURLConnection sendSynchronousRequest メソッドを使用して画像をダウンロードしていますが、正常に動作します。ただし、画像の URL が画像ファイル以外を指しているという問題に遭遇することがあります。たとえば、次の画像以外の URL が問題を引き起こしていることがわかりました。 http://www.100plusposters.com/images/ExoticFlowers.jpg URL が Web ページを返します。これは、画像がサイトにないために発生すると考えられます。
Objective-C の良い点の 1 つは、無効なイメージによってクラッシュが発生しないことです。シンプルに静かに進み、画像が表示されませんが、それはまだ問題です.
返されたデータを検証して、表示する前に有効な画像ファイルであることを確認するにはどうすればよいですか?
ありがとう!
それが役立つ場合に備えて、私の関連コード...
NSError *error = nil;
NSURLResponse *response;
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:5];
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if(data != nil && [error localizedDescription] == nil)
{
//Create UIImage object using initWithData method
//Display UIImage
}