ImageView不显示位于URL的图像

时间:2015-04-20 01:22:40

标签: java android android-imageview

我的Android应用程序有五个名称可供选择。用户可以单击其中一个,然后将打开一个新活动以显示该人的照片(从URL中获取)。所有五个图像实际上是相同的:.jpg,大致相同的尺寸等。前两个图像加载精细,第三个和第四个图像完全不显示,第五个图像也可以正常工作。

我打印并测试了未显示图片的网址,因此我知道这不是问题。我在日志中看到SkImageDecoder::Factory returned null。搜索SO,我找到了在输入流上调用reset()来解决此问题的建议。但是,我尝试了这个,我的应用程序崩溃了。

我已经坚持了几个小时这个bug,所以我们非常感谢任何建议。我用来获取图像的代码如下。此外,不确定它是否值得一提,但在不同的模拟器和我的平板电脑上一直缺少破碎的图像。

class ImageLoadTask extends AsyncTask<Void, Void, Bitmap> {

        private String url;
        private ImageView imageView;

        public ImageLoadTask(String url, ImageView imageView) {
            this.url = url;
            this.imageView = imageView;
        }

        @Override
        protected Bitmap doInBackground(Void... params) {
            try {
                URL urlConnection = new URL(url);
                HttpURLConnection connection = (HttpURLConnection) urlConnection
                        .openConnection();
                connection.setDoInput(true);
                connection.connect();
                InputStream input = connection.getInputStream();
                Bitmap myBitmap = BitmapFactory.decodeStream(input);
                return myBitmap;
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }

        @Override
        protected void onPostExecute(Bitmap result) {
            super.onPostExecute(result);
            imageView.setImageBitmap(result);
        }

    }

1 个答案:

答案 0 :(得分:0)

请参阅本教程关于主题列表视图(如facebook新闻源),它包含在listview项目中显示来自Web的图像的部分..它是一个很棒的教程,它将帮助您.. http://www.androidhive.info/2014/06/android-facebook-like-custom-listview-feed-using-volley/ 您可以下载和编辑源代码