为什么位图解码器不起作用?



我正在尝试在互联网上下载一些图像并使用GridView将它们粘贴到屏幕中..但是当我使用BitmapDecoder选项时,图像不会显示..如果我不使用它(仅下载),图像将显示在屏幕中:/

 URL url = new URL(src);
 Rect padding = new Rect(8,8,8,8);
 HttpURLConnection connection = (HttpURLConnection) url.openConnection();
 connection.setDoInput(true);
 connection.connect();
 InputStream input = connection.getInputStream();
 final BitmapFactory.Options options = new BitmapFactory.Options();
 options.inJustDecodeBounds = true;
 BitmapFactory.decodeStream(input, padding , options);
 options.inSampleSize = calculateInSampleSize(options, 300, 300);
 options.inJustDecodeBounds = false;
return  BitmapFactory.decodeStream(input, padding, options);

不能从同一输入流解码两次。最好的选择是立即将文件保存到磁盘并从那里解码,或者将输入流读取到字节数组中,然后解码字节数组。

最新更新