Android中如何根据URL获取图片

 时间:2026-02-14 22:34:14

1、如下图所示,需要根据URL地址获取图片加载到图中Anroid机器人所在的位置,这是运行前的效果:

Android中如何根据URL获取图片

2、首先需根据URL地址获取图片,如下所示,urladdr即为图片地址,返回Drawable对象:

//download image from network using @urladdress

private Drawable loadImageFromNetwork(String urladdr) {

// TODO Auto-generated method stub

Drawable drawable = null;

try{

  //judge if has picture locate or not according to filename

  drawable = Drawable.createFromStream(new URL(urladdr).openStream(), "image.jpg");

  }catch(IOException e){

     Log.d("test",e.getMessage());

  }

  if(drawable == null){

     Log.d("test","null drawable");

     }else{

        Log.d("test","not null drawable");

     }

  return drawable;

}

3、获取到图片后,需要更新主线程UI资源,考虑到时间以及界面反应延迟等,所以采用线程加以处理,如下图所示:

// image

new Thread(new Runnable(){

   Drawable drawable = loadImageFromNetwork(urladdress);

   @Override

   public void run(){

     //post() is quite important,update pictures in UI main thread

     image.post(new Runnable(){

     @Override

     public void run(){

       //TODO Auto-generated method stub

       image.setImageDrawable(drawable);

     }

  });

}

//download image from network using @urladdress

private Drawable loadImageFromNetwork(String urladdr) {

  //... 略(如 1 中所示)

}

}).start();  //线程启动

4、说明:在上述示例代码中,image是ImageView类的一个对象,也就是APP中的一个显示图像组件,利用获取到的图片drawable去更新image,运行效果如下所示:

Android中如何根据URL获取图片

  • 手机QQ怎么更换匿名主题
  • 微信开发者工具怎样设置主题和字体大小
  • jsp页面如何用上前端框架
  • Eclipse怎么关闭项目 和 打开已经关闭的项目
  • 电脑图形连接树莓派出现Connection refused
  • 热门搜索
    什么叫爱一个人 会当凌绝顶一览众山小的意思 处理违章需要什么证件 hrc是什么意思 百舸争流的意思 booking是什么意思 除牛反绒是什么意思 空调匹数什么意思 关切的意思 妖娆的意思