如何在带位图的imageView中显示高分辨率图像?
我正在尝试使用位图显示图像。低分辨率图像在imageView中显示良好,但高分辨率图像显示不佳。当我选择任何高分辨率图像时,它将使imageView变为白色。 我该怎么解决?
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
switch (requestCode) {
case 1:
if (resultCode == RESULT_OK) {
Uri selectedImage = data.getData();
String[] fillPathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(selectedImage, fillPathColumn, null, null, null);
cursor.moveToFirst();
String picPath = cursor.getString(cursor.getColumnIndex(fillPathColumn[0]));
cursor.close();
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(picPath, options);
ByteArrayOutputStream out = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 0, out);
imageView.setImageBitmap(bitmap);
}
}
}
答案 0 :(得分:0)
找到了使用Glide from here加载高分辨率图像的方法。
如果图像需要长时间设置,请在此处更改质量
bitmap.compress(Bitmap.CompressFormat.JPEG, 50, out);