在說加載本地圖片的兩種方式之前铸敏,先說說項(xiàng)目中缚忧,圖片資源有兩種存儲(chǔ)方式:
1.圖片資源放在Assets.xcassets中
? ? 1>這種方式放置的圖片資源,在打包成ipa后杈笔,會(huì)變成Assets.cer闪水。
? ? 2>這種方式放置的圖片,獲取不到該圖片的路徑蒙具。
? ? 3>只能使用imageNamed方式加載圖片球榆,不能使用imageWithContentsOfFile方法。
2.圖片資源放在項(xiàng)目文件中
? ? 1>這種方式放置的圖片禁筏,能夠獲取到該圖片的路徑
? ? 2>既可以使用imageNamed方式加載芜果,也可以使用imageWithContentsOfFile方法加載圖片。
加載本地圖片常用以下兩種方式的區(qū)別:
1.[UIImage imageNamed:]
a.指向它的指針被銷毀了融师,它的內(nèi)存也無法銷毀。
b.放到Assets.xcassets中的圖片資源蚁吝,默認(rèn)就帶有了緩存旱爆。所以一般經(jīng)常用的圖片就會(huì)存放在Assets.xcassets里面,因?yàn)锳ssets.xcassets里面的圖片只能用imageNamed加載窘茁。
2.[UIImage imageWithContentsOfFile:]
a.指向它的指針被銷毀了怀伦,該資源就會(huì)從內(nèi)存中釋放了。
b.放到項(xiàng)目中的圖片資源山林,默認(rèn)就不帶有了緩存房待。所以不經(jīng)常使用的或者大批量的圖片,就吧把資源放在項(xiàng)目中,那么就可以用imageWithContentsOfFile的方式去加載桑孩。
通過上面說的圖片資源放置的方式不同拜鹤,所以圖片資源放在項(xiàng)目文件中的方式,我們可以獲取到圖片路徑流椒,那么這種圖片敏簿,以上兩種方式都可以使用。
但是Assets中的圖片宣虾,由于我們獲取不到對(duì)應(yīng)的圖片路徑惯裕,那么只能用imageNamed方式來加載。
另:view的animationImages屬性調(diào)用了绣硝,也會(huì)帶有緩存蜻势。