日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android 之使用多线程中的AsyncTask实现下载网络图片资源

發布時間:2025/4/5 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 之使用多线程中的AsyncTask实现下载网络图片资源 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前臺顯示:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"><ImageViewandroid:id="@+id/imageView_img"android:src="@mipmap/ic_launcher"android:layout_height="200dp"android:layout_width="200dp"android:layout_gravity="center_horizontal"/><Buttonandroid:onClick="click"android:layout_height="wrap_content"android:layout_width="wrap_content"android:text="下載"android:layout_gravity="center_horizontal"/> </LinearLayout>

后臺邏輯:

package com.example.lenovo.async_imagedownload;import android.app.ProgressDialog; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.AsyncTask; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.ImageView; import android.widget.Toast;import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL;public class MainActivity extends AppCompatActivity {private ImageView imageView_img;private ProgressDialog progressDialog;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);this.imageView_img = (ImageView) this.findViewById(R.id.imageView_img);}public void click(View view){this.progressDialog = new ProgressDialog(this);this.progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);String path = "https://gss0.bdstatic.com/94o3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike92%2C5%2C5%2C92%2C30/sign=61e019ca7dec54e755e1124cd851f035/7a899e510fb30f24027878f7ce95d143ac4b0367.jpg ";new myAsyncTask().execute(path);}private final class myAsyncTask extends AsyncTask<String,Integer,Bitmap>{@Overrideprotected void onPreExecute(){progressDialog.setMessage("正在下載網絡圖片,請稍等。。。");progressDialog.show();}/*** 網絡下載操作* @param params* @return*/@Overrideprotected Bitmap doInBackground(String... params) {try{//1.根據網址得到統一資源定位符對象URL url = new URL(params[0]);//2.打開連接HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();//3.設置相關參數httpURLConnection.setConnectTimeout(3000);//三秒后如果連接不上,//向服務器發送請求并得到服務器返回的狀態碼:200表示 ok//4.得到輸入流對象InputStream inputStream = httpURLConnection.getInputStream();//5.得到網絡圖片的總大小int size = httpURLConnection.getContentLength();publishProgress(0,size);//0:代表報告的是文件的總大小ByteArrayOutputStream byteArrayOuputStream = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = 0;while((len = inputStream.read(buffer))!=-1){byteArrayOuputStream.write(buffer,0,len);publishProgress(1,len);//1.代表報告下載的進度}byte[] data = byteArrayOuputStream.toByteArray();//將字節數組還原成原始圖片對象Bitmap bitmap = BitmapFactory.decodeByteArray(data,0,data.length);return bitmap;}catch(Exception e){e.printStackTrace();}return null;}@Overrideprotected void onProgressUpdate(Integer...values){switch (values[0]){case 0:progressDialog.setMax(values[1]);break;case 1:progressDialog.incrementProgressBy(values[1]);break;}}@Overrideprotected void onPostExecute(Bitmap bitmap) {progressDialog.dismiss();if (bitmap == null) {Toast.makeText(MainActivity.this, "網絡圖片下載失敗",Toast.LENGTH_LONG).show();return;}//將下載好的bitmap圖像顯示到imageView控件上imageView_img.setImageBitmap(bitmap);}} }注意: 需要實現此功能,必須在功能清單文件下添加 <uses-permission android:name="android.permission.INTERNET"/>這句權限代碼才可以實現要實現的功能。


總結

以上是生活随笔為你收集整理的android 之使用多线程中的AsyncTask实现下载网络图片资源的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黑人精品一区二区三区 | 日韩在线免费 | 欧美日韩一区二区三区在线电影 | 超碰啪啪| 手机亚洲第一页 | 国产日韩一区二区三区 | 老熟妇一区二区三区啪啪 | 久久精品国产精品亚洲 | 亚欧成人精品 | 亚色视频在线 | 日本女教师电影 | 亚洲色成人一区二区三区小说 | 日日操狠狠操 | 美女一级视频 | 天堂网www在线| 青青网站| 久久久久久精 | 91精品国产91久久久久青草 | 波多野结衣一区二区三区中文字幕 | 97精品| 超碰97av | 无码少妇精品一区二区免费动态 | 天天搞天天搞 | 欧美丰满熟妇xxxx | 日日操夜夜操视频 | 免费看av在线 | 国产操比视频 | 青青草原综合久久大伊人精品 | 大桥未久av一区二区三区中文 | xxxx视频在线观看 | 99热一区 | 欧美亚洲综合久久 | 欧美福利视频在线观看 | 亚洲精品小视频 | 极品探花在线观看 | 男人的天堂日韩 | 国产原创av在线 | 黄色三级网 | 三级网站国产 | 一区二区三区久久精品 | 亚洲成人自拍网 | 国产情侣激情自拍 | 永久免费网站直接看 | 亚洲国产综合视频 | 国产精品1页 | 国产人妻黑人一区二区三区 | 成人免费观看视频大全 | 亚洲熟女少妇一区 | 日本在线一级片 | 亚洲综合免费观看高清完整版 | 老司机在线观看视频 | 哺乳期给上司喂奶hd | 国产精品www色诱视频 | www.狠狠插 | 貂蝉被到爽流白浆在线观看 | 亚洲综合中文字幕在线 | 91中出| 亚洲国产无线乱码在线观看 | 欧美精品在线第一页 | 色老头综合| 永久精品 | 国产福利片在线观看 | 永久中文字幕 | 麻豆成人91精品二区三区 | 狠狠干狠狠操 | 香蕉视频官方网站 | 色吧av | 日韩综合| 四虎音影| 欧美美女性生活 | 天堂网免费视频 | 欧美日韩在线综合 | 肉色超薄丝袜脚交一区二区 | 国产精品s | 波多野结衣啪啪 | 操视频网站 | 黄av在线播放 | 成人在线视频网站 | 久久久久国产一区二区三区 | 国产人成在线 | 亚洲日本视频 | 亚洲欧洲日韩综合 | 制服.丝袜.亚洲.中文.综合懂 | 91打屁股| 日韩三级黄色片 | 午夜剧场免费观看 | 亚洲加勒比 | 人人爱操 | 1区2区3区视频 | 日韩欧美综合 | 亚洲一线在线观看 | 激情久久av | 992av| 91精品国自产在线偷拍蜜桃 | 欧美日韩精品一区二区在线观看 | 日日狠狠| 中文字幕精品一区二区三区精品 | 日本wwwwww| av在线综合网 |