【发布时间】:2015-02-25 23:34:00
【问题描述】:
基本上,我正在解析一些带有图像的 JSON,并尝试将其加载到 ImageView 中。但是 mBitmap 返回 null。我不知道为什么,进一步的研究没有帮助..
这是我正在使用的示例网址:
http://b.thumbs.redditmedia.com/ivBAJzLMJEkEy9jgTy3z4n-mO7gIGt5mQFU1Al5kJ-I.jpg
以下是所有相关代码:
public static Bitmap LoadImageFromUrl(String url){
try {
mBitmap = BitmapFactory.decodeStream((InputStream)new URL(url).getContent());
return mBitmap;
}catch (Exception e){
Log.d(TAG,"Error getting image");
return null;
}
}
这里是调用方法的地方:
mListingModel.setmImageView(LoadImageFromUrl(data.getString(JSON_THUMBNAIL)));
这里是我设置 ImageView 的地方:
if(mItem.getmImageView() != null) {
holder.imageView.setImageBitmap(mItem.getmImageView());
}
注意:我在 AsyncTask 中调用该方法,所以这不是问题。
【问题讨论】:
-
你的应用有什么样的权限?另外:包括你的 logcat,以防万一那里有东西......
-
我建议使用几十个库中的任何一个来加载图像,而不是尝试在
URL上使用getContent()。您更有可能获得更多可以帮助您隔离问题的日志信息,并且它们通常可以处理异步填充ImageView。以Picasso 为例。 -
@DigCamara 我的清单中已经包含 Internet 权限,因为它正在从网站加载其他数据。当我回到家时,我会尝试包含我的 logcat 信息。
-
@CommonsWare 感谢您的帮助。你认为我应该有另一个线程吗?我已经有一个 AsyncTask 来填充我的列表视图等。但我会研究毕加索。
-
为什么这个问题有+2?检查 LOGCAT 的日志。我很确定您那里有“获取图像时出错”...编辑 +3...您有一些 sockpupet 帐户吗?
标签: android json bitmap bitmapfactory