当前位置:主页 > 移动开发 > Android代码 >

Android中ImageView使用网络图片资源的方法

时间:2021-01-22 12:27:36 | 栏目:Android代码 | 点击:

本文实例讲述了Android中ImageView使用网络图片资源的方法。分享给大家供大家参考。具体如下:

很多时候我们不想把东西都放在APK里面,或者是不能放进去,这时候我们就需要万能的网路帮助自己实现了

运行效果截图如下:

java代码如下:

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;
 }
}

希望本文所述对大家的Android程序设计有所帮助。

您可能感兴趣的文章:

相关文章