如何调用本地图像文件并显示到imageviewcontroller中

时间:2012-01-10 06:38:28

标签: iphone ios xcode xcode4 asihttprequest

我创建了一个应用程序,在应用程序不被删除的情况下创建本地存储付款文件。

我已经完成了:我下载文件并存储到本地(应用程序文档文件夹)。

现在我遇到了麻烦: 在下载图像之后,我将进入本地,并且不会显示该图像。在NSLog中,生成了url,我无法显示图像。

  

/Users/username/Library/Application%20Support/iPhone%20Simulator/5.0/Applications/F233ED88-1546-4FB0-BE93-0E0FB8C8C3D6/Documents/NationalMedalofArts-150x150.jpg

修改:

NSURL *imageURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@",
                   @"/Users/username/Library/Application Support/iPhone Simulator/5.0/Applications/F233ED88-1546-4FB0-BE93-0E0FB8C8C3D6/Documents/NationalMedalofArts-150x150.jpg"]];
NSData *imageData = [NSData dataWithContentsOfURL:imageURL];
NSLog(@"%@",imageData);
UIImage *image = [UIImage imageWithData:imageData];
self.imgView.image = image;

当NSLog为NSData时,它显示为NULL

2 个答案:

答案 0 :(得分:3)

这样更好:

NSString *fileName = @"NationalMedalofArts-150x150.jpg";
NSString *path = [NSString stringWithFormat:@"%@/Documents/%@", NSHomeDirectory(), fileName];
self.imgView.image = [UIImage imageWithContentsOfFile:path];

答案 1 :(得分:2)

尝试使用:

NSString* documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* file = [documentsPath stringByAppendingPathComponent:@"NationalMedalofArts-150x150.jpg"];
NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:file];
UIImage *image = [UIImage imageWithData:imageData];
self.imgView.image = image;

当访问应用程序的文档文件夹中的文件时,您必须使用第一行来查找documents-folder的路径。上面的代码应该适合你。