Android Volley的简单使用
16lz
2021-01-23
①首先添加依赖
dependencies { //项目依赖添加 implementation 'com.android.volley:volley:1.1.1'}
②加载数据实现代码
final TextView textView = findViewById(R.id.textView); String url = "https://www.baidu.com"; //1.创建一个volley队列 RequestQueue queue = Volley.newRequestQueue(this); //2.创建一个请求,请求有三个参数: //Method:请求的方式 //Response.Listener:正确响应处理操作 //Response.ErrorListener:错误响应处理操作 StringRequest stringRequest = new StringRequest( StringRequest.Method.GET, url, new Response.Listener<String>() { @Override public void onResponse(String response) { textView.setText(response); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Log.e(TAG,"onErrorResponse",error); } } ); //把请求添加到队列中处理,Volley执行的是异步操作. queue.add(stringRequest);
③加载图片实现代码
final ImageView imageView = findViewById(R.id.imageView); String url = "https://www.baidu.com/img/superlogo_c4d7df0a003d3db9b65e9ef0fe6da1ec.png"; //1.创建一个volley队列 RequestQueue queue = Volley.newRequestQueue(this); //2.创建imageLoader对象,管理图片 ,imageLoader对象有两个参数: //RequestQueue:请求的队列 //ImageLoader.ImageCache: 缓存设置 ImageLoader imageLoader = new ImageLoader(queue, new ImageLoader.ImageCache() { //3.Lru–>(Least recent used)最少最近使用算法 设置图片的缓冲对象为50个. private LruCache<String,Bitmap> cache = new LruCache<>(50); @Override public Bitmap getBitmap(String url) { //得到缓冲图片地址 return cache.get(url); } @Override public void putBitmap(String url, Bitmap bitmap) { //放进缓存,图片的URL地址和图片 cache.put(url,bitmap); } }); //4.通过imageLoader.get()方法设置图片,get方法有两个参数: //url:图片地址 //ImageLoader.ImageListener 监听对象 //Response.Listener:正确响应处理操作 //Response.ErrorListener:错误响应处理操作 imageLoader.get(url, new ImageLoader.ImageListener() { @Override public void onResponse(ImageLoader.ImageContainer response, boolean isImmediate) { imageView.setImageBitmap(response.getBitmap()); } @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "onErrorResponse: ",error ); } });
GitHub参考代码:https://github.com/Mrlove133481/GalleryDemo
LruCache缓存类源码解析:https://blog.csdn.net/qq_23547831/article/details/50971968
Volley的基本用法:https://blog.csdn.net/u010356768/article/details/87720280
更多相关文章
- Android如何实现图片轮播
- android 数据库操作异常
- android 中常用操作
- 图片拖动功能实现
- Android平台上实现图片的缩放,圆角,倒影效果
- android 对SD卡文件的I/O操作
- android读取图片
- Android 使用Glide实现圆形和圆角图片