iOS Xcode图片放入的两种方式Asset Catalogs和直接拖入

本地图片的两种放入方式

  • Asset Catalogs

一般是以蓝色的Assets.xcassets的文件夹形式在工程中,以Image Set的形式管理。当一组图片放入的时候同时会生成描述文件Contents.json。且在打包后以Assets.car的形式存在,不能打开(网上有工具ThemeEngine可以打开,感兴趣的可以测试)。
以此方式放入的图片并不在mainBundle中,不能使用contentOfFile这样的API来加载图片,interface builder中使用图片时不需要后缀和倍数标识(@2x这样的)

iOS Xcode图片放入的两种方式Asset Catalogs和直接拖入_第1张图片
assets.car文件 ![contents.json文件.png](http://upload-images.jianshu.io/upload_images/1465346-7492a2fe70329322.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

优势: 性能好,节省Disk。Asset Catalogs会用一个高度优化的特殊格式来存所有图片,而不是一个一个的单独的图片资源,会更少的涉及频繁Disk I/O操作,且会按需下载适合你机型的合适分辨率的图片资源; 安全性。图片资源得到一定程度保护(Asset,car不易打开)

  • 直接拖拽到工程
    如果是纯代码,图片名需要手动添加@2x,@3x等倍数标识,且需要指明后缀.png,.jpg;IB添加图片的话只需要指明后缀就好,不用添加倍数标识。
    注意: 私有pod由于bundle的问题需要采用这种方式来放置资源图片,在interface builder中也可以直接使用,只要写好倍数标识和后缀就好。如果采用代码方式需要使用contentsOfFile的方式并制定好自己的bundle
iOS Xcode图片放入的两种方式Asset Catalogs和直接拖入_第2张图片
直接拖拽到工程的图片资源文件.png

你可能感兴趣的:(iOS Xcode图片放入的两种方式Asset Catalogs和直接拖入)