iOS 中讀取圖片的方法 有兩種
根據(jù)是否將創(chuàng)建好的對(duì)象緩存入系統(tǒng)內(nèi)存,有兩類(lèi)創(chuàng)建UIImage對(duì)象的方法可選:
緩存:+ imageNamed:膏执,只需傳入文件名.擴(kuò)展名(可選)即可轮锥。
不緩存:+ imageWithContentsOfFile:捐名,必須傳入文件的全名(全路徑+文件名)箩做。
注意近忙,對(duì)于有緩存功能的方法來(lái)說(shuō)田晚,其創(chuàng)建對(duì)象的步驟如下:
根據(jù)圖片文件名在緩存池中查找特定的UIImage對(duì)象嘱兼,入存在,將這個(gè)對(duì)象返回贤徒。
如果不存在芹壕,則從bundle中加載圖片數(shù)據(jù),創(chuàng)建對(duì)象并返回接奈。
如果相應(yīng)的圖片數(shù)據(jù)不存在踢涌,返回nil
Images.xcassets
Images.xcassets在app打包后,以Assets.car文件的形式出現(xiàn)在bundle中序宦。其作用在于:
自動(dòng)識(shí)別@2x睁壁,@3x圖片,對(duì)內(nèi)容相同但分辨率不同的圖片統(tǒng)一管理挨厚。
可以對(duì)圖片進(jìn)行剪裁和拉伸處理堡僻。
Images.xcassets中的圖片資源只能通過(guò)imageNamed:方法加載,通過(guò)NSBundle的pathForResource:ofType:無(wú)法獲得圖片路徑疫剃。因此钉疫,Images.xcassets只適合存放系統(tǒng)常用的,占用內(nèi)存小的圖片資源