首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从documents目录加载图像

从documents目录加载图像
EN

Stack Overflow用户
提问于 2011-12-26 20:46:42
回答 6查看 24.1K关注 0票数 19

无法显示我的图像(.png)。

我检查它是否存在于我使用的路径中,它确实存在。但是没有图像出现。

这是我一直在尝试的:

代码语言:javascript
复制
NSArray  *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir  = [documentPaths objectAtIndex:0];

NSString *outputPath    = [documentsDir stringByAppendingPathComponent:[fileList objectAtIndex:indexPath.row]];

NSFileManager *fileManager = [[[NSFileManager alloc] init] autorelease];



NSString *imgPath = [[outputPath stringByReplacingOccurrencesOfString:@"mov" withString:@"png"]retain];


if ([fileManager fileExistsAtPath:imgPath]) 
{
    NSLog(@"FOUND IMG");
    NSLog(imgPath);
}


NSData *imgData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:imgPath]];
UIImage *thumbNail = [[UIImage alloc] initWithData:imgData];
UIImageView * imgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 120, 120)];
[imgView setImage:thumbNail];

[cell addSubview:imgView];
[imgView release];

确认文件存在的调试输出

代码语言:javascript
复制
FOUND IMG
2011-12-26 12:42:23.066 iGeo2[412:707] /var/mobile/Applications/1A2B0D85-CDB1-4E4B- 
9509-EF68B1A0E720/Documents/0.009000.png

我有点困惑。有没有人看到我在哪里犯了错?

非常感谢,-Code

我尝试了其他一些方法,但什么都没有出现。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-12-26 20:50:59

您应该使用[NSURL fileURLWithPath:imgPath]而不是[NSURL URLWithString:imgPath]。图像路径不是有效的url,它需要file://前缀。

票数 17
EN

Stack Overflow用户

发布于 2011-12-26 21:06:02

试着使用

代码语言:javascript
复制
NSData *imgData = [NSData dataWithContentsOfFile:imgPath];
UIImage *thumbNail = [[UIImage alloc] initWithData:imgData];

代码语言:javascript
复制
NSData *imgData = [[NSData alloc] initWithContentsOfURL:[NSURL fileURLWithPath:imgPath]];
UIImage *thumbNail = [[UIImage alloc] initWithData:imgData];
票数 23
EN

Stack Overflow用户

发布于 2011-12-26 20:55:55

你需要给出正确的文件url,这将是

代码语言:javascript
复制
NSURL *imgURL = [NSURL fileURLWithPath:imgPath];

然后,使用适当的imgURL变量初始化图像,最后,要将图像添加到单元,您需要执行以下操作

代码语言:javascript
复制
[cell.contentView addSubview:imgView];

我希望它能解决你的问题。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8635909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档