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