原文地址:http://www.jianshu.com/p/5358f587af38緩存
Images.xcassets在app打包後,以Assets.car文件的形式出如今bundle中。其做用在於:app
自動識別@2x,@3x圖片,對內容相同但分辨率不一樣的圖片統一管理。 能夠對圖片進行剪裁和拉伸處理。 UIImage從bundle中加載圖片資源code
注意 Images.xcassets
中的圖片資源只能經過imageNamed:
方法加載,經過NSBundle
的pathForResource:ofType:
沒法得到圖片路徑。所以,Images.xcassets
只適合存放系統經常使用的,佔用內存小的圖片資源。圖片
imageNamed:
方法一樣能夠加載根目錄中的圖片資源。內存
要想利用imageWithContentsOfFile:
方法以不緩存的形式加載圖片,必須將圖片資源放置在根目錄中。資源
相對於jpg,iOS對png的支持較好,例如,若是從Images.xcassets
之外的地方加載圖片,必須在文件名後加擴展名,例如:get
// pic.jpg處於根目錄下 [UIImage imageNamed:@"pic"]; // 錯誤,圖片未能正確加載 [UIImage imageNamed:@"pic.jpg"]; // 正確