android - 改造响应体在 android 应用程序中无法正确解析
问题描述
我在 Android 的邮递员中收到此响应,我的 response.body() 不为空,但图像视图中仍然没有显示图像。
if (response.isSuccessful()) {
if (response.body()!=null) {
Glide.with(getApplicationContext()).load(response.body()).into(iv_userimage_header);
Toast.makeText(SubtitutesDashboard.this, "Image Set", Toast.LENGTH_SHORT).show();
}
}
这是邮递员的回复
解决方案
试试这个,确保你使用okhttp3.ResponseBody
. 所以像
...
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
...
然后将您的图像作为位图使用
Bitmap bitmap = BitmapFactory.decodeStream(response.body().byteStream());
你可以直接给你设置这个位图ImageView
iv_userimage_header.setImageBitmap(bitmap);
或者使用 Glide.asBitmap
有关更多信息,请参阅此 SO 帖子。
推荐阅读
- python - 未找到 suds 类型:数组,http://www.w3.org/2001/XMLSchema
- php - 原则 2:QueryBuilder 加入子查询
- python - 如何为多个 Django 视图提供表单
- amazon-web-services - 如何一次更改多个 EC2 实例的入站规则?
- java - 转储 http 标头 - Axis 1.4
- go - go 错误的 icmp cksum
- javafx - 如何在 JavaFX 中重置 ComboBox 滚动位置?
- algorithm - 如何优化我对 HackerRank 的最大矩形问题的解决方案?
- c++ - Clang sanitizers 缺少未初始化内存的读取
- r - 错误消息:“x”和“y”必须具有相同的长度