我正在尝试将图像 (.png) 加载到 UITableViewCell 的 backgroundView 中。但是,图像不显示。根据返回 NULL 的图像的日志输出,这似乎是初始化图像的问题。
我尝试过/检查过的事情:
文件名拼写和大写正确。
该文件已被适当地添加到 Xcode 并且在 Copy Bundle Resources 中可见
在文件检查器中选中文件的目标成员资格框
我更新了文件,所以可以肯定的是,我从模拟器中删除了应用程序以及 DerivedData 文件夹的内容。
我重新启动了 XCode。
我尝试通过以下方式加载图像:
[UIImage imageNamed:@"cell-bg.png"]
也
[UIImage imageNamed:@"cell-bg"]
我还尝试从捆绑包中加载:
NSBundle *mainBundle = [NSBundle mainBundle]; NSString *imagePath = [mainBundle pathForResource:@"cell-bg" ofType:@"png"]; NSLog(@"path: %@", imagePath); UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
对于最后一个, NSLog 在输出中生成完整路径,但是当我执行另一个 NSLog 时,image
它会返回NULL
.
Apple 的 UIImage 类参考在该-imageWithContentsOfFile:
方法下声明:
返回值 指定文件的新图像对象,如果方法无法从指定文件初始化图像,则返回 nil。
那么,文件可能有问题吗?我如何诊断和纠正问题?