吾知网

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 6246|回复: 0
打印 上一主题 下一主题

Android ImageView如何加载网络图片资源

[复制链接]
跳转到指定楼层
楼主
发表于 2015-11-20 18:04:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Java代码  [url=][/url]

  • package com.android.antking.imageview;  
  •   
  • import java.io.InputStream;  
  • import java.net.HttpURLConnection;  
  • import java.net.MalformedURLException;  
  • import java.net.URL;  
  •   
  • import android.app.Activity;  
  • import android.graphics.Bitmap;  
  • import android.graphics.BitmapFactory;  
  • import android.os.Bundle;  
  • import android.util.Log;  
  • import android.view.View;  
  • import android.widget.ImageView;  
  •   
  • public class MainActivity extends Activity {  
  •     //定义一个图片显示控件  
  •     private ImageView imageView;  
  •     /** Called when the activity is first created. */  
  •     @Override  
  •     public void onCreate(Bundle savedInstanceState) {  
  •         super.onCreate(savedInstanceState);  
  •         setContentView(R.layout.main);  
  •         //图片资源  
  •         String url = "http://s16.sinaimg.cn/orignal/89429f6dhb99b4903ebcf&690";  
  •         //得到可用的图片  
  •         Bitmap bitmap = getHttpBitmap(url);  
  •         imageView = (ImageView)this.findViewById(R.id.imageViewId);  
  •         //显示  
  •         imageView.setImageBitmap(bitmap);  
  •          
  •     }  
  •     /**
  •      * 获取网落图片资源  
  •      * @param url
  •      * @return
  •      */  
  •     public static Bitmap getHttpBitmap(String url){  
  •         URL myFileURL;  
  •         Bitmap bitmap=null;  
  •         try{  
  •             myFileURL = new URL(url);  
  •             //获得连接  
  •             HttpURLConnection conn=(HttpURLConnection)myFileURL.openConnection();  
  •             //设置超时时间为6000毫秒,conn.setConnectionTiem(0);表示没有时间限制  
  •             conn.setConnectTimeout(6000);  
  •             //连接设置获得数据流  
  •             conn.setDoInput(true);  
  •             //不使用缓存  
  •             conn.setUseCaches(false);  
  •             //这句可有可无,没有影响  
  •             //conn.connect();  
  •             //得到数据流  
  •             InputStream is = conn.getInputStream();  
  •             //解析得到图片  
  •             bitmap = BitmapFactory.decodeStream(is);  
  •             //关闭数据流  
  •             is.close();  
  •         }catch(Exception e){  
  •             e.printStackTrace();  
  •         }  
  •          
  •         return bitmap;  
  •          
  •     }  
  • }  


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|吾知网 ( 粤ICP备13013563号-1 )

GMT+8, 2024-11-22 17:44 , Processed in 1.093757 second(s), 10 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表