我有一个tableview,每行都有一个图标。 90%的行具有相同的图标。
在cellForRowAtIndexPath方法中,我从资源文件夹加载图像,如下所示:
var cellImage = UIImage(named: "MyImage")
这会造成性能问题吗?操作系统是否足够智能,现在每次都是相同的图像?如果我将图像加载一次并将其保存在类变量中并且每次都分配它会更好吗?
答案 0 :(得分:1)
UIImage
' named:
API DOES 进行某种缓存。
如果查看UIImage's documentation,请说明:
使用
init(named:in:compatibleWith:)
方法(或init(named:)
方法)从位于图像资产或图像文件中创建图像 在你的应用程序的主要包(或其他一些已知的包)中。 因为这些 方法自动缓存图像数据,尤其如此 推荐用于经常使用的图像。