国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Android 將網(wǎng)絡(luò)的Url資源轉(zhuǎn)換為Drawable資源方式

瀏覽:47日期:2022-09-25 18:10:50

Overview

在今天的開發(fā)學(xué)習(xí)中,我遇到了一個(gè)需求是在App的flash頁面添加bing每日一圖。這些都簡單,但是當(dāng)我獲取到了圖片的Url時(shí),我就遇到了一個(gè)非常尷尬的問題。就是如何將Url轉(zhuǎn)換為Drawabl并且添加到ImageView.

這邊的獲取圖片的Url就不說了。我們看一下如何將Url轉(zhuǎn)換為Drawable.

Url轉(zhuǎn)換為Drawable

我們先看一下源碼:

private Drawable loadImageFromNetwork(String imageUrl) { Drawable drawable = null; try { drawable = Drawable.createFromStream( new URL(imageUrl).openStream(), 'image.jpg'); } catch (IOException e) { Log.d('test', e.getMessage()); } if (drawable == null) { Log.d('test', 'null drawable'); } else { Log.d('test', 'not null drawable'); } return drawable;}

這部分就是我們將網(wǎng)絡(luò)Url資源轉(zhuǎn)換為Drawable資源了。

然后我們根據(jù)我們的源碼來分析一波:

首相我們創(chuàng)建了一個(gè)Drawable

然后我們通過我們的Url資源生成一個(gè)Drawable資源。

這樣我們的Url網(wǎng)絡(luò)資源,轉(zhuǎn)換為Drawable就完成。

補(bǔ)充知識:URL轉(zhuǎn)Drawable之 Android中獲取網(wǎng)絡(luò)圖片的三種方法

android中獲取網(wǎng)絡(luò)圖片是一件耗時(shí)的操作,如果直接獲取有可能會出現(xiàn)應(yīng)用程序無響應(yīng)(ANR:Application Not Responding)對話框的情況。對于這種情況,一般的方法就是耗時(shí)操作用線程來實(shí)現(xiàn)。下面列三種獲取url圖片的方法:

1.直接獲取:(容易:ANR,不建議)

mImageView = (ImageView)this.findViewById(R.id.imageThreadConcept) ; Drawable drawable = loadImageFromNetwork(IMAGE_URL); mImageView.setImageDrawable(drawable) ;

公用方法:

private Drawable loadImageFromNetwork(String imageUrl) { Drawable drawable = null; try { // 可以在這里通過文件名來判斷,是否本地有此圖片 drawable = Drawable.createFromStream( new URL(imageUrl).openStream(), 'image.jpg'); } catch (IOException e) { Log.d('test', e.getMessage()); } if (drawable == null) { Log.d('test', 'null drawable'); } else { Log.d('test', 'not null drawable'); } return drawable ; }

2. 后臺線程獲取url圖片:

mImageView = (ImageView)this.findViewById(R.id.imageThreadConcept) ; new Thread(new Runnable(){ Drawable drawable = loadImageFromNetwork(IMAGE_URL); @Override public void run() { // post() 特別關(guān)鍵,就是到UI主線程去更新圖片 mImageView.post(new Runnable(){ @Override public void run() { // TODO Auto-generated method stub mImageView.setImageDrawable(drawable) ; }}) ; } }).start() ;

3.AsyncTask獲取url圖片

mImageView = (ImageView)this.findViewById(R.id.imageThreadConcept) ; new DownloadImageTask().execute(IMAGE_URL) ; private class DownloadImageTask extends AsyncTask<String, Void, Drawable> { protected Drawable doInBackground(String... urls) { return loadImageFromNetwork(urls[0]); } protected void onPostExecute(Drawable result) { mImageView.setImageDrawable(result); } }

以上這篇Android 將網(wǎng)絡(luò)的Url資源轉(zhuǎn)換為Drawable資源方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Android
相關(guān)文章:
主站蜘蛛池模板: 日韩免费一区二区三区在线 | 二区三区在线观看 | 在线综合+亚洲+欧美中文字幕 | 精品在线播放视频 | 国内国产真实露脸对白 | 日本又黄又爽又免费 | 欧美黄www免费 | 久草久热 | 一区二区三区在线 | 网站 | 国产一区二区三区不卡免费观看 | 国产区91 | 亚洲欧美在线一区二区 | 亚洲产国偷v产偷v自拍涩爱 | 怡红院成人网 | 大量真实偷拍情侣视频野战 | 日产乱码精品一二三区 | 国产精品久久福利网站 | 女人张开腿让男人添 | 美美女下面被cao爽 美女131爽爽爽做爰中文视频 | 99视频精品在线 | 亚洲国产精品一区二区三区在线观看 | 日本一级特黄a大片在线 | 纯欧美一级毛片免费 | 一级a性色生活片久久毛片 一级a做爰片欧欧美毛片4 | 亚洲美色综合天天久久综合精品 | 成人欧美在线 | 自拍 第一页| 日韩精品欧美国产精品亚 | 日韩 国产 在线 | 尤蜜网站在线进入免费 | 在线欧美视频 | 天天躁天天碰天天看 | 中文字幕国产专区 | 欧美激情视频一级视频一级毛片 | 久草免费资源视频 | 2018久久久国产精品 | 国产成人精品综合在线 | 国产成人亚洲综合欧美一部 | 日本视频一区二区三区 | 欧美 亚洲 在线 | 成 人 a v黄 色 |