這篇文章主要介紹了Android開發(fā)中ImageLoder加載網(wǎng)絡(luò)圖片時如何將圖片設(shè)置為ImageView背景,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)作為成都網(wǎng)站建設(shè)公司,專注成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計,有關(guān)成都定制網(wǎng)站方案、改版、費(fèi)用等問題,行業(yè)涉及成都VR全景等多個領(lǐng)域,已為上千家企業(yè)服務(wù),得到了客戶的尊重與認(rèn)可。
具體如下:
最近開始接觸到android的開發(fā),在開發(fā)中使用ImageLoder加載網(wǎng)絡(luò)圖片,但是框架加載的圖片默認(rèn)是通過ImageView的src屬性設(shè)置,所以在某些場合是不符合需求,比如通過設(shè)置src在某些場景下是不能填充滿整個ImageView,但是通過設(shè)置背景就可以實現(xiàn),而框架并沒有提供將圖片設(shè)置為背景的方法,我在網(wǎng)上找了半天也看到了一些解決方案,但不是我想要的,于是我決定去看看源碼是怎么實現(xiàn),果然在源碼中就找到了“新大陸”,壓抑不住內(nèi)心的喜悅趕緊寫博客分享,也算做個筆記,希望對大家有幫助。
廢話到此為止 開始將進(jìn)入主題(上代碼)
/** * 加載網(wǎng)絡(luò)圖片設(shè)置為ImageView背景 * * @param url * @param view */ public void loadImageToBackground(String url, ImageView view) { ImageLoader.getInstance().displayImage(url, new BgImageViewAware(view)); }
上面這個方法就是一個簡單的使用ImageLoder加載網(wǎng)絡(luò)圖片的例子,如果要將圖片設(shè)置為背景,其核心部分就在 BgImageViewAware這個類里面,BgImageViewAware是一個自定義的類,它繼承自ImageViewAware這個類,我在看源碼的時候發(fā)現(xiàn)ImageLoder就是通過 ImageViewAware這個類把加載的圖片設(shè)置到src屬性的(有興趣的小伙伴可以自己去看源碼,源碼我就不貼出來了),所以我只需要重寫這個類的方法將圖片設(shè)置到背景就解決了
下面是BgImageViewAware類的代碼:
/** * <pre>將圖片設(shè)置為ImageView的背景</pre> * Created by ZCM on 2016/8/5. version 1.0 */ public class BgImageViewAware extends ImageViewAware { public BgImageViewAware(ImageView imageView) { this(imageView, true); } public BgImageViewAware(ImageView imageView, boolean checkActualViewSize) { super(imageView, checkActualViewSize); } @TargetApi(Build.VERSION_CODES.JELLY_BEAN) @Override public boolean setImageBitmap(Bitmap bitmap) { //重寫父類方法,將圖片設(shè)為背景 if(Looper.myLooper() == Looper.getMainLooper()) { ImageView imageView = (ImageView)this.imageViewRef.get(); if(imageView != null) { imageView.setBackground(new BitmapDrawable(bitmap)); return true; } } return false; } @Override public boolean setImageDrawable(Drawable drawable) { return super.setImageDrawable(drawable); } }
到了這一步,將圖片設(shè)置為ImageView的背景的整個功能算是我完成了(其實很簡單^_^)
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Android開發(fā)中ImageLoder加載網(wǎng)絡(luò)圖片時如何將圖片設(shè)置為ImageView背景”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
名稱欄目:Android開發(fā)中ImageLoder加載網(wǎng)絡(luò)圖片時如何將圖片設(shè)置為ImageView背景
網(wǎng)頁路徑:http://jinyejixie.com/article2/jjjjic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站收錄、全網(wǎng)營銷推廣、虛擬主機(jī)、網(wǎng)頁設(shè)計公司、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)