我对iOS和Xcode相当新颖。 我试图加载一个图像 [UIImage imageNamed:@"imageName.png/jpg and so on"]; 但它只返回零。 图像应该在我的项目包中,考虑到我可以从InterfaceBuilder的拖放菜单中select它,并通过“添加文件到”项目名称“…”菜单将其添加到Xcode。 我使用.png或.jpg图像没有区别,结果保持不变:它们通过IB工作,但如果我尝试自己运行imageNamed方法,则不会。 提前感谢任何帮助!
编辑2014年2月: 请注意,这个问题的date从iOS 2.0! 自那时以来,图像需求和处理已经发生了很多变化。 视网膜使图像更大,加载稍微复杂。 随着内置支持iPad和视网膜图像, 你一定要在你的代码中使用ImageNamed 。 我看到很多人说imageNamed是坏的,但是同等数量的人说性能是好的 – 尤其是在渲染UITableView的时候。 例如在iPhoneDeveloperTips.com上看到这个问题或这篇文章 UIImage的imageNamed方法用于泄漏,所以最好避免它,但在最近的版本中已经修复。 我想更好地理解cachingalgorithm,以便作出合理的决定,让我可以信任系统来caching我的图像,以及我需要多加努力的地方,并自己做。 我目前的基本理解是,它是由文件名引用的UIImages的一个简单的NSMutableDictionary 。 它变得更大,当内存耗尽时,它变得更小。 例如,有没有人知道imageNamed后面的图像caching不响应didReceiveMemoryWarning ? 苹果似乎不会这样做。 如果您对cachingalgorithm有任何了解,请在此处张贴。