我在UIImageView中显示UIImage时遇到问题。我查看了遍历stackoverflow的类似问题,但没有一个修复程序帮助了我。
以下是使用Interface Builder的代码 -
//@property and @synthesize set for IBOutlet UIImageView *imageView
- (void)viewDidLoad
{
[super viewDidLoad];
NSAssert(self.imageView, @"self.imageView is nil. Check your IBOutlet connection");
UIImage *image = [UIImage imageNamed:@"banner.jpg"];
NSAssert(image, @"image is nil");
self.imageView.image = image;
}
此代码将以NSAssert终止,在控制台中打印'image is nil'。
我还尝试直接从属性检查器中选择Image:
然而它仍然没有显示图像(仍然以NSAssert终止 - 'image is nil')。
非常感谢任何帮助或建议。
由于
答案 0 :(得分:1)
看看您是否可以在代码中看到该文件 - 使用
path = [[NSBundle main bundle] pathForResource:@"banner" ofType:@"jpg"];
assert(path);
assert([[NSFileManager defaultManager] fileExists:path])
我只是输入了这个但是你明白了 - 使用第一个获取路径,确保你得到它,然后让文件管理器查看它是否存在。如果是,您可以将文件读入NSData对象,然后记录大小,然后查看是否可以使用imageWithData创建图像 - 如果失败则iOS可能无法解压缩。
我经常拍摄在PhotoShop或其他地方创建的图像,在预览中加载它们,然后在将它们添加到我的项目之前保存它们。一般来说,如果Apple技术以您想要的任何格式(png,jpg等)保存图像,那么iOS也可以打开它。