Android SDK中自帶的ImageView控件,沒有根據網絡的URL位址得到圖檔的功能。是以就得引進一個
開源控件SmartImageView,這個控件的包可以去GitHub網站上下載下傳。
SmarImageView的能幹什麼
在這個開源項目中的README檔案中,是這麼描述這個元件的:
SmartImageView是用來替換Android中标準的ImageView元件的,它新增的可能可以從URL、使用者的聯系位址簿擷取,而且圖檔緩存到記憶體和磁盤可以更快的加載。
SmarImageView的使用
1.導包:
2.在XML中使用,注意要加上包名:
包名一般不手寫,容易出錯而且慢,可以找到SmartImageView.java,點選展開,右擊
(C)SmartImageView,然後點選Copy Qualified Name即可複制完整的帶包名的控件名。
3.在代碼中使用SmartImageView
注意聲明要用SmartImageView,然後調用它的setImageUrl(String url)即可得到網絡圖檔。
img.setImageUrl(news_item.image, R.drawable.loaderror); //第1個參數表示要訪
問的網絡圖檔URL位址,第2個參數為找不到網絡圖檔時預設顯示的圖檔。
SmarImageView的原理
SmartImageView繼承了ImageView,添加了許多新的功能,如setImageUrl,它也有很多的重載
形式。它的底層還是使用網絡通路HttpURLConnection擷取網絡圖檔的,當然它也解決了緩存的問題,
還有顯示圖檔加載進度條等功能。
總之,這些功能聽起來都特别的爽,不過在用開源項目的同時,最好先要大概了解一下它的原理
本文轉自屠夫章哥 51CTO部落格,原文連結:http://blog.51cto.com/4259297/1676062,如需轉載請自行聯系原作者