我正在尝试显示从另一个站点获得的随机URL中的图像,但是该图像在运行时不显示,这是我尝试的代码(imageView在onCreate上面声明,并且parse在onCreate中调用)。
void parse(String url){
final RequestQueue requestQueue = Volley.newRequestQueue(cat.this);
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
String message;
@Override
public void onResponse(JSONObject response) {
try{
message=response.getString("url");
imageView.setImageBitmap(getBitmap(message));
}
catch (JSONException e){ e.printStackTrace(); }
}
}, error -> {
error.printStackTrace();
requestQueue.stop();
});
requestQueue.add(jsonObjectRequest);
requestQueue.stop();
}
public Bitmap getBitmap(String src) {
try {
java.net.URL url = new java.net.URL(src);
HttpURLConnection connection = (HttpURLConnection) url
.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
return BitmapFactory.decodeStream(input);
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
答案 0 :(得分:0)
使用诸如glide,fresco,picasso之类的加载图像服务
这种方式比以前更容易,更快