从网上加载图片其后展示在屏幕上
从网上加载图片然后展示在屏幕上
直接上代码
1 package org.lxh.server; 2 3 import java.io.ByteArrayOutputStream; 4 import java.io.InputStream; 5 import java.net.HttpURLConnection; 6 import java.net.URL; 7 8 import org.xml.demo.server.R; 9 10 import android.app.Activity; 11 import android.graphics.Bitmap; 12 import android.graphics.BitmapFactory; 13 import android.os.Bundle; 14 import android.os.StrictMode; 15 import android.widget.ImageView; 16 17 /** 18 * 19 * @author Administrator 从网上下载图片然后展示在屏幕上 20 * 21 */ 22 23 public class MyWebDemo extends Activity { 24 private static final String PATH = "http://a.hiphotos.baidu.com/album/w%3D2048/sign=5c4fe8d4a5c27d1ea5263cc42fedac6e/024f78f0f736afc3f1416515b219ebc4b7451274.jpg"; 25 private ImageView img = null; 26 27 @Override 28 protected void onCreate(Bundle savedInstanceState) { 29 // TODO Auto-generated method stub 30 super.onCreate(savedInstanceState); 31 super.setContentView(R.layout.main_http); 32 this.img = (ImageView) super.findViewById(R.id.img); 33 34 StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() 35 .detectDiskReads().detectDiskWrites().detectNetwork() 36 .penaltyLog().build()); 37 StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() 38 .detectLeakedSqlLiteObjects().detectLeakedClosableObjects() 39 .penaltyLog().penaltyDeath().build()); 40 try { 41 byte data[] = this.getUrlData(); 42 Bitmap bm = BitmapFactory.decodeByteArray(data, 0, data.length); 43 this.img.setImageBitmap(bm); 44 } catch (Exception e) { 45 e.printStackTrace(); 46 } 47 } 48 49 public byte[] getUrlData() throws Exception { 50 ByteArrayOutputStream bos = null; 51 try { 52 //定义URl 53 URL url = new URL(PATH); 54 //定义内存输入流 55 bos = new ByteArrayOutputStream(); 56 //每次读取1024个 57 byte data[] = new byte[1024]; 58 //打开 59 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 60 //取得输入流 61 InputStream inputStream = conn.getInputStream(); 62 int len = 0; 63 //读取到底部 64 while ((len = inputStream.read(data)) != -1) { 65 bos.write(data, 0, len); 66 } 67 //变成字节数组返回 68 return bos.toByteArray(); 69 } catch (Exception e) { 70 throw e; 71 } finally { 72 if (bos != null) { 73 //关闭流 74 bos.close(); 75 } 76 } 77 } 78 }
<uses-permission android:name="android.permission.INTERNET" />