在我的iPhone应用程序中。我没有在imageview中获取图像。这些图像来自链接。
链接是http://pointngo.testshell.net/Images/2013-01-05%2001-05-59_20110623033304.jpg
我正在使用此代码。
UIImage* myImage = [UIImage imageWithData: [NSData dataWithContentsOfURL: [NSURL URLWithString:str]]];
答案 0 :(得分:2)
试试这个: -
str = [str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
UIImage* myImage = [UIImage imageWithData: [NSData dataWithContentsOfURL: [NSURL URLWithString:str]]];
希望它可以帮到你
答案 1 :(得分:1)
试试这段代码......
NSURL *imgURL = [NSURL URLWithString:@"http://pointngo.testshell.net/Images/2013-01-05%2001-05-59_20110623033304.jpg"];
NSData *data = [[NSData alloc] initWithContentsOfURL:imgURL];
UIImage *tmpImage = [[UIImage alloc] initWithData:data];
yourImageView.image = tmpImage;
答案 2 :(得分:1)
您应该确保[NSData dataWithContentsOfURL: [NSURL URLWithString:str]]
不返回nil
。如果nil
您应该使用dataWithContentsOfURL:options:error:
。
引用Apple文档: 回报价值 包含来自aURL指定的位置的数据的数据对象。如果无法创建数据对象,则返回nil。
讨论
如果您需要知道失败的原因,请使用dataWithContentsOfURL:options:error:
。
答案 3 :(得分:0)
我尝试了以下内容,它对我来说很好用:
NSString *str = @"http://pointngo.testshell.net/Images/2013-01-05%2001-05-59_20110623033304.jpg";
//NSLog(@"Image data %@", [NSData dataWithContentsOfURL: [NSURL URLWithString:str]]);
UIImageView *imgv = [[[UIImageView alloc] initWithFrame: CGRectMake(50.0, 50.0, 100.0, 100.0)] autorelease];
imgv.image = [UIImage imageWithData:[NSData dataWithContentsOfURL: [NSURL URLWithString:str]]];
imgv.contentMode = UIViewContentModeScaleAspectFill;
[self.view addSubview:imgv];