首先这两个方法都是常用来加载图片。
两个方法的不同之处在于:
1.imageNamed: 这个方法在默认状态下会加载图片之后进行缓存,它会用一个指定的名字在系统缓存中查找并返回一个图片对象。如果缓存中没有找到相应的对象,则从指定地方加载图片并缓存对象,并返回这个图像。
2.imageWithContentsOfFile: 这个方法是只会加载图片不会缓存图片。
使用场景:
1.imageWithContentsOfFile: 当应用程序需要加载一张比较大的图片并且使用一次性,那么其实是没有必要去缓存这个图片的,用imageWithContentsOfFile是最为经济的方式,这样不会因为UIImage元素较多情况下,CPU会被逐个分散在不必要缓存上浪费过多时间.
2.imageNamed:在不大影响性能的情况下,选择 imageName:因为,大量使用imageNamed方式会增加开销CPU的时间来做这件事,所以我们需要根据特定场景慎重选择