android从网上加载图片简单示例
16lz
2021-01-23
package com.example.login;import java.io.IOException;import java.io.InputStream;import org.apache.http.HttpResponse;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;import org.apache.http.client.methods.HttpGet;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.protocol.DefaultedHttpContext;import android.app.Activity;import android.app.ProgressDialog;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageView;import android.widget.Toast;public class Inter_Activity extends Activity {ImageView imageView;Button btn_download;// 憨豆Handler handler;// 进度条ProgressDialog progressDialog;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.activity_inter_picture);btn_download = (Button) findViewById(R.id.bt_download_pic);progressDialog = new ProgressDialog(this);handler = new Handler() {@Overridepublic void handleMessage(Message msg) {// TODO Auto-generated method stub// super.handleMessage(msg);//移除progressDialog.dismiss();if (msg.what == 1) {// 下载成功Bitmap bitmap = (Bitmap) msg.obj;imageView.setImageBitmap(bitmap);} else {Toast.makeText(Inter_Activity.this, "网络不给力", 2000).show();}}};imageView = (ImageView) findViewById(R.id.iv_download_pic);btn_download = (Button) findViewById(R.id.bt_download_pic);btn_download.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {progressDialog.setTitle("图片正在下载");progressDialog.setMessage("正在玩命加载中...");progressDialog.setCancelable(false);progressDialog.show();// 下载downloadThread dtThread = new downloadThread();dtThread.start();}});}class downloadThread extends Thread {@Overridepublic void run() {Message message = new Message();HttpClient client = new DefaultHttpClient();HttpGet get = new HttpGet("http://pica.nipic.com/2007-11-09/2007119124413448_2.jpg");try {HttpResponse response = client.execute(get);if (response.getStatusLine().getStatusCode() == 200) {InputStream inputStream = response.getEntity().getContent();Bitmap bitmap = BitmapFactory.decodeStream(inputStream);// imageView.setImageBitmap(bitmap);message.what = 1;message.obj = bitmap;handler.sendMessage(message);}} catch (ClientProtocolException e) {// TODO Auto-generated catch block// e.printStackTrace();message.what = 2;} catch (IOException e) {// TODO Auto-generated catch block// e.printStackTrace();message.what = 2;}}}}
布局文件: <?xml version="1.0" encoding="utf-8"?>
更多相关文章
- 将 android sql文件放生成在sd卡
- Android写本地文件
- 不使用布局文件,代码中自定义界面
- android的线性布局
- android manifest文件结构
- android attr.xml文件