[UIImage imageNamed:@"icon.png"]

用上面的方法加载图片有问题。该方法即可以从bundle中读取图片。

这种方法在application bundle的顶层文件夹寻找由供应的名字的图象 。
如果找到图片,装载到iPhone系统缓存图象。那意味图片是(理论上)放在内存里作为cache的。因此如果图片资源多了或大了,此方式容易引起发生内存警告从而导致自动退出的问题。

最好是通过直接读取文件路径[UIImage imageWithContentsOfFile]解决掉这个问题,应用示例:

NSString *path = [[NSBundle mainBundle] pathForResource:@”icon”
ofType:@”png”];
myImage = [UIImage imageWithContentsOfFile:path];


备注:imageNamed方法是不能通过路径进行加载图片的,如果要通过路径加载图片可以通过下面两个方法加载,一个是URL一个是FilePath。

NSImage *image = [[NSImage alloc]initWithContentsOfURL:(NSURL *)];
NSImage
*image = [[NSImage alloc]initWithContentsOfFile:(NSString *)];
用完记得  [image release];

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-06-01
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-21
猜你喜欢
  • 2022-12-23
  • 2021-12-23
  • 2021-08-19
  • 2021-11-22
  • 2022-12-23
  • 2021-07-01
  • 2022-12-23
相关资源
相似解决方案