iOS Assets.xcassets
来源:互联网 发布:疯狂美工京东关联促销 编辑:程序博客网 时间:2024/05/14 02:27
转载自 点击打开链接
Assets.xcassets是用来存放图像资源文件的。将一个图片放在Assets里面是这个样子的
Image Set
Image Set
图像集,下面有个Name
,这个Name
并不是指图片的名字而是指像集的名字。什么意思?上个图说明一下,
[UIImage imageNamed:@"xxx"]
通常这里xxx
就是相集的名字,在相集里面放两张不一样的@2x和@3x图片,在iPhone6和iPhone6 Plus加载出来的会不一样。
Devices
Devices下面有很多设置具体效果可以参见demo
请戳这里下载
1、设置相同的相集下面的显示不同的图片。比如一个APP是适配iPhone和iPad,在iPhone上显示A图片,在iPad上显示B图片,勾选上iPhone和iPad那么可以对iPhone和iPad单独设置图片
2、根据sizeClass设置图片,比如6Plus在横屏的时候显示A图片,在竖屏的时候显示B图片那么久可以设置Devices下面的 Width
和Height
3、Memory和Graphics虽然我很想写,但是我真的不知道。还没用到过。希望知道的小伙伴可以留言告诉我。
4、 Scale Factors 可设置矢量图(Singele Vector)和位图(Vector wiht Overrides)
我们知道xcode可以放PDF格式的图片代替@2x,@3x图片,这样即使放大也不会失真
5、 Render As 默认是Default还有两个分别是Oriminal Image
(始终绘制图片原始状态,不使用Tint Color)Template Image
(始终根据Tint Color绘制图片,忽略图片的颜色信息)
比如设置UITabBarItem中的图片的时候,默认情况下回对图片进行渲染成蓝色,(具体可以参照demo的第一个UITabBarItem),这个时候我们需要回复图片本来的颜色,这是图片的渲染为Oriminal Image
就行了。
如果用代码实现的话,是这样
[[UITabBarItem alloc] initWithTitle:tittle image:[[UIImage imageNamed:@"image"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] selectedImage:[[UIImage imageNamed:@"selectedImage"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
Image
图片的信息比如 文件名(File Name
) 大小(Size
)等等上面设置的信息
Slicing
这个是用来设置图片的拉伸的。例如QQ聊天的气泡,四个角不被拉伸,中间的可以拉伸。如果用代码实现的话,可以参考MJ的博客。在Assets.xcassets怎么实现呢?
拖动图片上的三根线,Slicing的值会跟着改变,在左侧线和中间线之间的像素会在拉伸时被填充,在中间线和右侧线之间的像素将被隐藏。在上侧线和中间线之间的像素会在拉伸时被填充,在中间线和下侧线之间的像素将被隐藏。
总结:
如果图片存放在assets资源管理器,最终里面所以的图片会被打包成Assets.car(用ThemeEngine
可以把图片弄出来),其作用在于
1、 自动识别@2x,@3x图片,
2、 根据不同的设备,不同的分辨率设置相应的图片。
3、 可以对图片进行剪裁和拉伸处理
在.car中的图片是不能通过imageWithContentsOfFile:来加载
imageName:加载的图片要么是Assets.car中的图片,要么是资源包(mainBundle)中直接存放的图片。如果用imageNamed:从Images.xcassets以外的地方加载图片,必须在文件名后加扩展名,例如:
UIImage *image=[UIImage imageNamed:@"plus.png"];
demo下载
作者:小沫360
链接:http://www.jianshu.com/p/867d9fa85770
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
- iOS Assets.xcassets
- iOS开发中的Assets.xcassets和Assets.car
- iOS开发中的Assets.xcassets和Assets.car
- iOS开发笔记——关于Assets.xcassets的学习
- Xcode Assets (*.xcassets)
- Assets.xcassets 应用
- assets.xcassets加入资源
- Assets.xcassets误删后的恢复
- Assets.xcassets导致的错误
- 工作备忘——iOS 获取Assets.xcassets中APPIcon中的图片
- Xcode误删Images.xcassets文件夹的恢复办法(Assets.xcassets)
- Assets.xcassets的使用和优缺点
- Assets.xcassets的适配关系
- 获取Assets.xcassets中APPIcon中的图片
- ios Images.xcassets 创建
- ios ximages.xcassets
- iOS Images.xcassets 的使用
- Assets.xcassets/no such file or directory 如何解决
- 前端之js-常用正则表达式
- react-router带参数使用Link跳转并取出参数
- SPOJ 25334 NPC2015A
- 动态规划6:台阶问题和矩阵最小路径问题
- 点9图的制作
- iOS Assets.xcassets
- Java关键字final、static使用总结
- oracle 存储过程执行体中循环的两种写法
- Matlab 编程基础(三)笔记
- 两次URL编码与两次encodeURI
- 【API】Unity5.6 Main Camera
- SpringMvc @InitBinder 表单多对象精准绑定接收
- js控制、获取复选框、下拉列表的信息
- Rightmost Digit