美文网首页
iOS中UIImage加载图片

iOS中UIImage加载图片

作者: 傲骨天成科技 | 来源:发表于2020-04-07 13:43 被阅读0次

一般我们加载项目中的图片会使用以下两种方式:
1.imagedNamed
2.imageWithContentsOfFile初始化

1.imageNamed:

该方法用于加载小图片/使用频率高的图片
此方法加载过得图片, 在App运行期间, 始终会保有缓存, 这个缓存是由系统管理的, 无法通过代码销毁缓存
当系统察觉到内存消耗过高, 就会自动释放这部分内存

Search for an object whose name was set explicitly using the setName: method and currently resides in the image cache.
该方法首先会从图片内存中查找
Search the app's main bundle for a file whose name matches the specified string.
如果没有找到, 就在App的mainBundle中查找
Search the Application Kit framework for a shared image with the specified name.
如果bundle中也没有, 就会去framework的库中寻找

2. imageWithContentsOfFile

该方法用于加载大图片/使用率较低的图片
它只是加载一次图片, 并且不会做缓存, 当对象释放的时候, 内存也就被释放掉了
因此对于不常用的图片应该使用这个方法

其中:imagedNamed默认加载成功后会在内存中缓存图片。而imageWithContentsOfFile仅仅加载图片,不缓存。
当大量使用imageNamed方式会在不需要缓存的地方增加CPU的开销,如果应用程序需要加载一张比较大的图片并且使用一次性,那么其实是没有必要去缓存这个图片的,用imageWithContentsOfFile是最为经济的方式,这样不会因为UIImage元素较多情况下,CPU会被逐个分散在不必要缓存上浪费过多时间。
imagedNamed是加载当前boundle中的图片。

相关文章

  • SDWebImage源码阅读笔记(一)

    在做iOS开发中加载图片是经常性工作,一种是使用UIImage加载本地图片,使用[UIImage imageNam...

  • iOS中UIImage加载图片

    一般我们加载项目中的图片会使用以下两种方式:1.imagedNamed2.imageWithContentsOfF...

  • iOS 小知识点总结

    1.iOS的UIImage的两种不同的图片加载方式 此种方式是直接加载图片,直接从文件中获取图片,不会出现缓存. ...

  • OpenglES笔记二项目初体验

    今天写个小案例,体验下opengles加载图片,这可不像iOS里[UIImage imageWithName:@"...

  • iOS 异步加载本地图片

    iOS 异步加载本地图片 问题 当某个界面使用系统API + (nullable UIImage *)imageN...

  • React Native 之组件Image

    一个用于显示图片的React组件,类似于iOS中UIImage控件,该组件可以通过多种方式加载图片资源,包括网络图...

  • iOS UIImage加载gif图片

    一.gif格式主要分块 (1) 控制块:控制块包含有用来控制数据流(Data Stream)或者设置硬件参数的信息...

  • 初级面试题

    加载图片时,使用UIImage(named: "")和UIImage(contentsOfFile: "")的区别...

  • 【iOS】图片裁剪

    ####【iOS】图片裁剪 UIImage *imageTop=[UIImage imageNamed:@"111...

  • ios简单圆形图片裁剪

    //加载图片 UIImage*image = [UIImageimageNamed:@"name"]; /...

网友评论

      本文标题:iOS中UIImage加载图片

      本文链接:https://www.haomeiwen.com/subject/ipagphtx.html