Assets是用來存放圖片資源文件
自動管理圖片,如@1x,@2x圖片,使用的時候使用Asset 名字即可;
管理應(yīng)用的Icon和Default圖片,這個挺方便的,可以完全拋開以前規(guī)范命名如Icon.png,Icon@2x.png,Xcode會自動識別尺寸然后匹配進(jìn)去;
個人覺得方便模塊圖片管理,可以針對模塊建立Component1.xcassets,在這個Category中去建立新的Image set;
可以可視化管理圖片拉伸,從而拋棄到處使用resizeImage...來獲取拉伸圖片;
在Assets中的圖片不能通過imageWithContentsOfFile:加載;
imageName:加載的圖片要么是Assets中的圖片,要么是資源包中的圖片,如果要用imageName:加載其他的圖片,必須在文件名后面添加擴(kuò)展名,如:

創(chuàng)建Asset Catalog:
方法:使用 File - new - File - Resource - Asset Catalog,會需要輸入名字和選擇Target;
建立完畢后單擊,文檔會將整個操作區(qū)域從左到右分為三部分,SetList, Set Viewer, Set attributes inspector;
在SetList區(qū)域左下角會有新增(+)和刪除(-)按鈕,實際在區(qū)域內(nèi)右擊也會有對應(yīng)選項;
New Image Set:圖片夾,這個常用;
New App Icon:用于圖標(biāo)管理;
New Lauch Image: 啟動圖;
New Folder:新文件夾,支持在文件夾嵌套;
新建New Image Set
使用New Image Set建立一個新的圖片夾,如下圖中的darc_component_temp,在屬性欄中可以選擇設(shè)備的類型,根據(jù)設(shè)備的不同,會有多個占位圖片;

提示:你還可以將三張圖片一起拖到Assets中,Assets會自動幫你生成一個New Image Set,前提是這三張圖片是同一個名字的三張不同格式命名,如:myImage.png,myImage@2x.png,myImage@3x.png;
關(guān)于Image Set的介紹
Image Set 是圖片集合,imageName:中name指的不是圖片的名稱,而是圖片集合的名稱,如:
[UIImage imageNamed:@"圖片集合名稱"];
點擊某個Image Set,右鍵選擇Show in Finder,可以看到有若干個文件夾,每個文件夾代表你創(chuàng)建的一個Image Set;
文件夾中,有一個Contents.json文件和若干張圖片,我們設(shè)置好的圖片都被拷貝一份添加到這些文件夾中;
根據(jù)sizeClass設(shè)置圖片,比如6Plus在橫屏的時候顯示A圖片,在豎屏的時候顯示B圖片那么久可以設(shè)置Devices下面的Width和Height
Scale Factors 可設(shè)置矢量圖(Singele Vector)和位圖(Vector wiht Overrides),我們知道xcode可以放PDF格式的圖片代替@2x,@3x圖片,這樣即使放大也不會失真
Render As 默認(rèn)是Default還有兩個分別是Oriminal Image(始終繪制圖片原始狀態(tài),不使用Tint Color)Template Image(始終根據(jù)Tint Color繪制圖片,忽略圖片的顏色信息);比如設(shè)置UITabBarItem中的圖片的時候,默認(rèn)情況下回對圖片進(jìn)行渲染成藍(lán)色,(具體可以參照demo的第一個UITabBarItem),這個時候我們需要回復(fù)圖片本來的顏色,這是圖片的渲染為Oriminal Image就行了。
如果用代碼實現(xiàn)的話,是這樣:
