URL から iPhone の UIImageView に UIImage をロードすると、いくつかの問題が発生します。オブジェクトのプロパティを使用して (NSURL の URLWithString メソッドの引数に URL を指定して) NSURL を生成すると、画像はまったく取得されませんが、同じ URL をハードコーディングすると、画像が取得され、期待どおりに表示されます。
[item valueForKey:@"pictureLocation"]; 2 つのハードコードされた文字列が連結されている場合でも、NSURl が問題なく生成されるため、以下の部分が問題の原因のようです。
NSString * imagePath = @"http://localhost:3000";
NSString * specificPath = (NSString *)[item valueForKey:@"pictureLocation"] ;
//concatenate the strings to get a fully formed URL
NSString * finalPath = [imagePath stringByAppendingString:specificPath];
UIImage *img = [[UIImage imageWithData: [NSData dataWithContentsOfURL: [NSURL URLWithString:finalPath]]] retain];
基本的に、finalPath を NSLog し、代わりにその URL をプログラムにハードコーディングすると、期待どおりの結果が得られます。
なぜこれが当てはまるのでしょうか?