在android studio中我們創(chuàng)建項(xiàng)目后,在資源res文件中有drawable和mipmap兩種存放圖片的文件夾,在使用哪一個(gè)文件夾來存放圖片,一直都很有爭議:
android 在 API level 17 加入了 mipmap 技術(shù)厚宰,對 bitmap 圖片的渲染支持 mipmap 技術(shù),來提高渲染的速度和質(zhì)量杠袱。
mipmap 是一種很早就有的技術(shù)了(紋理映射技術(shù)),android 中的 mipmap 技術(shù)主要為了應(yīng)對圖片大小縮放的處理窝稿,在android 中我們提供一個(gè) bitmap 圖片楣富,由于應(yīng)用的需要(比如縮放動(dòng)畫),可能對這個(gè) bitmap 進(jìn)行各種比例的縮小伴榔,為了提高縮小的速度和圖片的質(zhì)量纹蝴,android 通過 mipmap 技術(shù)提前對按縮小層級生成圖片預(yù)先存儲(chǔ)在內(nèi)存中,這樣就提高了圖片渲染的速度和質(zhì)量踪少。在API中通過 Bitmap 的 public final void setHasMipMap (boolean hasMipMap) 方法可以讓系統(tǒng)渲染器嘗試開啟 Bitmap 的 mipmap 技術(shù)塘安。但是這個(gè)方法只能建議系統(tǒng)開啟這個(gè)功能,至于是否正真開啟援奢,還是由系統(tǒng)決定耙旦。
res 目錄下面 mipmap 和 drawable 的區(qū)別也就是上面這個(gè)設(shè)置是否開啟的區(qū)別。
mipmap 目錄下的圖片默認(rèn) setHasMipMap 為 true萝究,drawable 默認(rèn) setHasMipMap 為 false。
google 建議大家只把 app 的啟動(dòng)圖標(biāo)放在 mipmap 目錄中锉罐,其他圖片資源仍然放在 drawable 下面帆竹。