AsyncTask下载网络图片的简单应用
1、imageTest
package lpc.com.asynctaskdemo;import android.app.Activity;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.os.AsyncTask;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import android.widget.ProgressBar;import java.io.BufferedInputStream;import java.io.IOException;import java.io.InputStream;import java.net.URL;import java.net.URLConnection;/*** Created by Administrator on 2015/12/8.*/public class ImageTest extends Activity {private ImageView mImageView;private ProgressBar mProgressBar;private String URL = "http://cdnq.duitang.com/uploads/item/201409/14/20140914172442_sjXYv.jpeg";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.image);mImageView = (ImageView) findViewById(R.id.image);mProgressBar = (ProgressBar) findViewById(R.id.progress);new MyAsycTask().execute(URL);}class MyAsycTask extends AsyncTask<String,Void,Bitmap>{@Overrideprotected void onPreExecute() {super.onPreExecute();mProgressBar.setVisibility(View.VISIBLE);}@Overrideprotected void onPostExecute(Bitmap bitmap) {super.onPostExecute(bitmap);mProgressBar.setVisibility(View.GONE);mImageView.setImageBitmap(bitmap);}@Overrideprotected Bitmap doInBackground(String... params) {String url = params[0];Bitmap bitmap = null;URLConnection connection;InputStream is;try {connection = new URL(url).openConnection();is = connection.getInputStream();BufferedInputStream bis = new BufferedInputStream(is);bitmap = BitmapFactory.decodeStream(bis);is.close();bis.close();} catch (IOException e) {e.printStackTrace();}return bitmap;}}}
2、布局文件 image.xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout 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/image"android:layout_width="match_parent"android:layout_height="match_parent" /><ProgressBarandroid:id="@+id/progress"android:visibility="gone"android:layout_centerInParent="true"android:layout_width="wrap_content"android:layout_height="wrap_content" /></RelativeLayout>
3、Manifest文件
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="lpc.com.asynctaskdemo"><uses-permission android:name="android.permission.INTERNET"/><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:supportsRtl="true"android:theme="@style/AppTheme"><activity android:name=".ImageTest"><intent-filter><action android:name="android.intent.action.MAIN"/><category android:name="android.intent.category.LAUNCHER"/></intent-filter></activity></application></manifest>
附件列表

浙公网安备 33010602011771号