今天接手一個項目發(fā)現(xiàn)有個地方的圖片顯示非常小,而且還不夠清晰,也沒辦法自適應(yīng)屏幕的顯示,非常的影響美觀,于是 就像這優(yōu)化一下。
先看看優(yōu)化前的效果和優(yōu)化后的效果。

修復(fù)后

修復(fù)前
布局文件修復(fù)前:

修復(fù)前
布局文件修復(fù)后:

修復(fù)后
我們可以看到即使圖片的寬度設(shè)置成全框,但是依舊顯示很小的圖片。
于是我就添加了android:scaleType="fitXY"這個屬性,但是發(fā)現(xiàn),圖片時填充滿了,但新的問題來了,那就是圖片拉伸導(dǎo)致變形了,所以必須配合這個屬性使用android:adjustViewBounds="true",這樣圖片的高度就不會因為拉伸而變形了,能滿足一般需求了,但是我發(fā)現(xiàn)圖片依舊顯示不夠清晰。
由于我們對圖片的清晰度要求比較高,所以我們必須加載高清的原圖。加載原圖有兩個步驟
步驟一,加載服務(wù)器上的高清圖,別加載縮列圖。
步驟二,從服務(wù)器上加載下來的圖片不要進(jìn)行壓縮,像一些圖片框架如Imageload ,默認(rèn)會將圖片進(jìn)行壓縮,從而避免oom的問題。如果我們這樣處理的話,又有可能出現(xiàn)圖片太大,無法加載的問題這里推薦一篇文章的解決思路http://blog.sina.com.cn/s/blog_ac843e330102v89w.html
本來ImageView的一些設(shè)置是很基礎(chǔ)的東西,但是發(fā)現(xiàn)自己的基礎(chǔ)不牢固,很多非?;A(chǔ)的東西都沒有掌握,所以寫下這篇文章記錄下。
寫得不對的地方,或者有更好的思路可以寫下你的評論。