2

URLから画像を取得しようとしていますが、取得できません。誰かが私に何が悪かったのか教えてもらえますか

参考までに以下のコードを見つけてください。

NSString *ImageURL = @"http://images.pcmac.org/SiSFiles/Schools/TN/JacksonMadisonCounty/RoseHillMiddle/Uploads/Locations/{B690E93E-F7C9-48AF-B72A-BFF944FA6D4A}_104_9169.JPG";


    NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:ImageURL]];

  img.image = [UIImage imageWithData:imageData];

ここで、imgはUIImageViewです。

4

5 に答える 5

8

ImageURL の DEMO を作成するだけで、次のコードを配置する必要があります:-

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSString *ImageURL = @"http://images.pcmac.org/SiSFiles/Schools/TN/JacksonMadisonCounty/RoseHillMiddle/Uploads/Locations/{B690E93E-F7C9-48AF-B72A-BFF944FA6D4A}_104_9169.JPG";


    ImageURL =[ImageURL stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];

    NSLog(@"img url ==%@",ImageURL);
    NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:ImageURL]];
    UIImage *MYimage = [UIImage imageWithData:data];

    NSLog(@"==%@",MYimage);
    [imgview setImage:MYimage];

}

作成したばかりの画像 URL のデモをダウンロードします。

http://www.sendspace.com/file/m966ae

ありがとうございました :)

于 2013-01-09T06:30:17.633 に答える
0

URLから画像を取得する方法は複数あります。どなたでもご利用いただけます。しかし、私が試した中で最速のものは

-(UIImage*)getImageFromURLwithUrl:(NSString*)imgURLStr
{
    NSMutableURLRequest *requestWithBodyParams = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:imgURLStr]];
    NSData *imageData = [NSURLConnection sendSynchronousRequest:requestWithBodyParams returningResponse:nil error:nil];
    UIImage *image = [UIImage imageWithData:imageData];

    return image;
}
于 2013-01-09T07:04:20.170 に答える
0

これは、imageURL に「{」と「}」が含まれているため、画像を取得できないためです。この中括弧を置き換えてください。

-(NSString*)replace:(NSString*)string
{
    NSString *str = [[string stringByReplacingOccurrencesOfString:@"{" withString:@"%7B"] stringByReplacingOccurrencesOfString:@"}" withString:@"%7D"];

    return str;
}
于 2013-01-09T06:17:56.350 に答える
0

これを試して.......

NSString *ImageURL = @"http://images.pcmac.org/SiSFiles/Schools/TN/JacksonMadisonCounty/RoseHillMiddle/Uploads/Locations/{B690E93E-F7C9-48AF-B72A-BFF944FA6D4A}_104_9169.JPG";
NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:ImageURL]];
UIImage *IMG = [UIImage imageWithData:data];
img.image = IMG;
于 2013-01-09T06:22:03.573 に答える
0

次の方法で url オブジェクトを作成する必要があります。

NSURL *url = [NSURL URLWithString:[ImageURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

次に、その URL を使用してデータを取得します。それがあなたのために働くことを願っています。

于 2013-01-09T06:32:47.767 に答える