Volley+Gson+Picasso实现联网加载图片进行显示

介绍之前先来看一下,使用这三个框架实现的结果。

效果图

一、Volley框架的简单使用

Volley是谷歌在2013年Google I/O大会上推出的一个新的网络通信框架。具体的关于Volley的知识百度一大堆,这里就不介绍了。

使用Volley连接网络
  • 创建请求队列

       // 请求队列
      RequestQueue queue = Volley.newRequestQueue(this);
    
  • 创建请求

      // url使用的是天狗的美图
      String url = "http://apis.baidu.com/tngou/gallery/classify";
      
      // 字符串请求,请求的是字符串
      StringRequest request = new StringRequest(url, new Response.Listener<String>() {
          @Override
          public void onResponse(String response) {
              // 请求正常时调用
              // Log.d("MainActivity", response);
    
              // 使用gson框架解析
              Gson gson = new Gson();
              // 将字符串封装到bean中
              mBean = gson.fromJson(response, CategoryBean.class);
    
              // 设置适配器
              mListView.setAdapter(new CategoryAdapter(MainActivity.this, mBean.getTngou()));
    
          }
      }, new Response.ErrorListener() {
          @Override
          public void onErrorResponse(VolleyError error) {
              // 请求发生错误时调用
              error.printStackTrace();
          }
      }) {
          // 重写请求头方法
          @Override
          public Map<String, String> getHeaders() throws AuthFailureError {
              // 将请求参数返回
              Map<String, String> map = new HashMap<>();
              map.put("apikey", "75e0aecf9a0d887adf328cb770f3a8ea");
              return map;
          }
      };
    
  • 使用请求队列添加请求

      // 添加队列
      queue.add(request);
    

二、Gson框架的简单使用

  • Gson是谷歌官方提供的用来解析Json的框架,可以将Json字符串解析成Bean或者List集合等。

  • 创建Gson对象

       // 使用gson框架解析
       Gson gson = new Gson();
    
  • 解析字符串

       // 将字符串封装到bean中
       CategoryBean bean = gson.fromJson(response, CategoryBean.class);
    

三、Picasso框架的简单使用

  • 使用Picasso只需要一行代码,它的内部已经做了三级缓存处理

      // 使用picasso框架显示图片
      Picasso.with(mContext).load(imgUrl) // 图片的url路径
      .placeholder(R.drawable.ic_default) // 默认显示图片,占位图
      .error(R.drawable.ic_error) // 加载错误显示的图片
      .into(ivImage); // 显示到哪个控件
    

这里只是介绍这三个控件最最简单的用法,如果你还想要了解更多的话可以百度或者上Github学习。


Github地址

Volley
Gson
Picasso


欢迎大家访问我的简书博客GitHub

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,896评论 18 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,760评论 18 399
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,192评论 25 708
  • 一晃毕业十多年,在这期间,从来没怎么考虑过春运的问题,但是永远忘不了大一的那年寒假,K126次,西安到沈阳的列车,...
    凤凰涅槃再涅槃阅读 300评论 2 3
  • 气温还没有转暖的迹象,天却亮的有些早了,预示着冬天很快就会过去,春天的脚步越来越近。 今晨空气特别给力,久违的蓝天...
    老散流年阅读 200评论 0 0