iOS开发 本地图片加载失败
发布网友
发布时间:2022-05-12 09:50
我来回答
共3个回答
热心网友
时间:2023-10-01 20:11
这肯定的啊,因为用[UIImage imageNamed:question.icon]是直接从当前的项目中读取文件,可以实现;
而NSString *path = [[NSBundle mainBundle] pathForResource:question.icon];是从沙盒路径中读取文件,只用question.icon是不够的,应该加上当前的沙盒路径,如果你的沙盒路径中还有一个存放图片的文件夹的话,还要加上这个文件夹的名字,question.icon应该改为:
沙盒路径/文件夹名/question.icon
具体实现是这样的:
//程序包的根目录(沙盒路径)
NSString *resourcePath = [[NSBundle mainBundle] resourcePath];
//完整的图片路径,如果图片是放在文件夹中的话,还要在中间加上文件夹的路径
NSString *imagepath = [resourcePath stringByAppendingPathComponent:@”question.icon“];
//可以打印路径看看是什么情况
NSlog(@“%@”,imagePath);
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
热心网友
时间:2023-10-01 20:12
1、你没有吧图片加载到你的项目中
2、你在加载图片的时候,图片的名称 出错
3、 UIImage *image = [UIImage imageNamed:@"xxx.png"];
热心网友
时间:2023-10-01 20:12
上面写的都有问题,应该是这样
UIImage *img = [UIImage imageNamed:@"question.icon"];
另外一种方法
NSString *path = [[NSBundle mainBundle] pathForResource:@“question” ofType:@"icon"];
UIImage *img = [UIImage imageWithContentOfFile:path];
热心网友
时间:2023-10-01 20:11
这肯定的啊,因为用[UIImage imageNamed:question.icon]是直接从当前的项目中读取文件,可以实现;
而NSString *path = [[NSBundle mainBundle] pathForResource:question.icon];是从沙盒路径中读取文件,只用question.icon是不够的,应该加上当前的沙盒路径,如果你的沙盒路径中还有一个存放图片的文件夹的话,还要加上这个文件夹的名字,question.icon应该改为:
沙盒路径/文件夹名/question.icon
具体实现是这样的:
//程序包的根目录(沙盒路径)
NSString *resourcePath = [[NSBundle mainBundle] resourcePath];
//完整的图片路径,如果图片是放在文件夹中的话,还要在中间加上文件夹的路径
NSString *imagepath = [resourcePath stringByAppendingPathComponent:@”question.icon“];
//可以打印路径看看是什么情况
NSlog(@“%@”,imagePath);
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
热心网友
时间:2023-10-01 20:12
1、你没有吧图片加载到你的项目中
2、你在加载图片的时候,图片的名称 出错
3、 UIImage *image = [UIImage imageNamed:@"xxx.png"];
热心网友
时间:2023-10-01 20:12
上面写的都有问题,应该是这样
UIImage *img = [UIImage imageNamed:@"question.icon"];
另外一种方法
NSString *path = [[NSBundle mainBundle] pathForResource:@“question” ofType:@"icon"];
UIImage *img = [UIImage imageWithContentOfFile:path];