Android中Web开发之显示网络图片的两种方法

根据URL返回一个位图格式

[java][/java] view plaincopy

  1. public Bitmap getBitMap(String strUrl) {
  2.     Bitmap bitmap = null;
  3.     InputStream is = null;
  4.     try {
  5.         URL url = new URL(strUrl);
  6.         URLConnection conn = url.openConnection();
  7.         is = conn.getInputStream();
  8.     } catch (IOException e) {
  9.         // TODO Auto-generated catch block
  10.         e.printStackTrace();
  11.     }
  12.     bitmap = BitmapFactory.decodeStream(is);
  13.     return bitmap;
  14. }

根据URL返回Drawable

[java][/java] view plaincopy

  1. public Drawable getDrawable(String strUrl) {
  2.     Drawable drawable = null;
  3.     InputStream is = null;
  4.     try {
  5.         URL url = new URL(strUrl);
  6.         URLConnection conn = url.openConnection();
  7.         is = conn.getInputStream();
  8.     } catch (IOException e) {
  9.         // TODO Auto-generated catch block
  10.         e.printStackTrace();
  11.     }
  12.     drawable = Drawable.createFromStream(is, “src”);
  13.     return drawable;
  14. }

应用

[java][/java] view plaincopy

  1. package com.app.myweb;
  2. import java.io.IOException;
  3. import java.io.InputStream;
  4. import java.net.HttpURLConnection;
  5. import java.net.URI;
  6. import java.net.URL;
  7. import java.net.URLConnection;
  8. import android.app.Activity;
  9. import android.graphics.Bitmap;
  10. import android.graphics.BitmapFactory;
  11. import android.graphics.drawable.Drawable;
  12. import android.os.Bundle;
  13. import android.view.View;
  14. import android.view.View.OnClickListener;
  15. import android.widget.Button;
  16. import android.widget.ImageView;
  17. public class ShowWebPicture extends Activity{
  18.     private Button button1,button2;
  19.     private ImageView imageView;
  20.     @Override
  21.     protected void onCreate(Bundle savedInstanceState) {
  22.         // TODO Auto-generated method stub
  23.         super.onCreate(savedInstanceState);
  24.         setContentView(R.layout.showwebpicture);
  25.         button1 = (Button) findViewById(R.id.button1);
  26.         button2 = (Button) findViewById(R.id.button2);
  27.         imageView = (ImageView) findViewById(R.id.imageView1);
  28.         button1.setOnClickListener(new OnClickListener() {
  29.             @Override
  30.             public void onClick(View v) {
  31.                 // TODO Auto-generated method stub
  32.                 imageView.setImageBitmap(getBitMap(“http://10.0.2.2:8888/android/image01.jpg”));
  33.             }
  34.         });
  35.         button2.setOnClickListener(new OnClickListener() {
  36.             @Override
  37.             public void onClick(View v) {
  38.                 // TODO Auto-generated method stub
  39.                 imageView.setImageDrawable(getDrawable(“http://10.0.2.2:8888/android/image02.jpg”));
  40.             }
  41.         });
  42.     }
  43.     /** 根据URL返回一个位图格式 */
  44.     public Bitmap getBitMap(String strUrl) {
  45.         Bitmap bitmap = null;
  46.         InputStream is = null;
  47.         try {
  48.             URL url = new URL(strUrl);
  49.             URLConnection conn = url.openConnection();
  50.             is = conn.getInputStream();
  51.         } catch (IOException e) {
  52.             // TODO Auto-generated catch block
  53.             e.printStackTrace();
  54.         }
  55.         bitmap = BitmapFactory.decodeStream(is);
  56.         return bitmap;
  57.     }
  58.     /** 根据URL返回Drawable */
  59.     public Drawable getDrawable(String strUrl) {
  60.         Drawable drawable = null;
  61.         InputStream is = null;
  62.         try {
  63.             URL url = new URL(strUrl);
  64.             URLConnection conn = url.openConnection();
  65.             is = conn.getInputStream();
  66.         } catch (IOException e) {
  67.             // TODO Auto-generated catch block
  68.             e.printStackTrace();
  69.         }
  70.         drawable = Drawable.createFromStream(is, “src”);
  71.         return drawable;
  72.     }
  73. }

标签