美文网首页
app图片资源管理-Assets

app图片资源管理-Assets

作者: smile小芳 | 来源:发表于2016-10-13 10:16 被阅读0次

    Assets是用来存放图片资源文件

    自动管理图片,如@1x,@2x图片,使用的时候使用Asset 名字即可;

    管理应用的Icon和Default图片,这个挺方便的,可以完全抛开以前规范命名如Icon.png,Icon@2x.png,Xcode会自动识别尺寸然后匹配进去;

    个人觉得方便模块图片管理,可以针对模块建立Component1.xcassets,在这个Category中去建立新的Image set;

    可以可视化管理图片拉伸,从而抛弃到处使用resizeImage...来获取拉伸图片;

    在Assets中的图片不能通过imageWithContentsOfFile:加载;

    imageName:加载的图片要么是Assets中的图片,要么是资源包中的图片,如果要用imageName:加载其他的图片,必须在文件名后面添加扩展名,如:

    创建Asset Catalog:

    方法:使用 File - new - File - Resource - Asset Catalog,会需要输入名字和选择Target;

    建立完毕后单击,文档会将整个操作区域从左到右分为三部分,SetList, Set Viewer, Set attributes inspector;

    在SetList区域左下角会有新增(+)和删除(-)按钮,实际在区域内右击也会有对应选项;

    New Image Set:图片夹,这个常用;

    New App Icon:用于图标管理;

    New Lauch Image: 启动图;

    New Folder:新文件夹,支持在文件夹嵌套;

    新建New Image Set

    使用New Image Set建立一个新的图片夹,如下图中的darc_component_temp,在属性栏中可以选择设备的类型,根据设备的不同,会有多个占位图片;

    提示:你还可以将三张图片一起拖到Assets中,Assets会自动帮你生成一个New Image Set,前提是这三张图片是同一个名字的三张不同格式命名,如:myImage.png,myImage@2x.png,myImage@3x.png;

    关于Image Set的介绍

    Image Set 是图片集合,imageName:中name指的不是图片的名称,而是图片集合的名称,如:

    [UIImage imageNamed:@"图片集合名称"];

    点击某个Image Set,右键选择Show in Finder,可以看到有若干个文件夹,每个文件夹代表你创建的一个Image Set;

    文件夹中,有一个Contents.json文件和若干张图片,我们设置好的图片都被拷贝一份添加到这些文件夹中;

    根据sizeClass设置图片,比如6Plus在横屏的时候显示A图片,在竖屏的时候显示B图片那么久可以设置Devices下面的Width和Height

    Scale Factors 可设置矢量图(Singele Vector)和位图(Vector wiht Overrides),我们知道xcode可以放PDF格式的图片代替@2x,@3x图片,这样即使放大也不会失真

    Render As 默认是Default还有两个分别是Oriminal Image(始终绘制图片原始状态,不使用Tint Color)Template Image(始终根据Tint Color绘制图片,忽略图片的颜色信息);比如设置UITabBarItem中的图片的时候,默认情况下回对图片进行渲染成蓝色,(具体可以参照demo的第一个UITabBarItem),这个时候我们需要回复图片本来的颜色,这是图片的渲染为Oriminal Image就行了。

    如果用代码实现的话,是这样:

    相关文章

      网友评论

          本文标题:app图片资源管理-Assets

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