繁体   English   中英

来自Android SD卡的PNG图像显示

[英]PNG image display from SD card of Android

我已将透明的PNG图像保存在SD卡中。 我现在要显示。 我正在使用下面的代码。

selected_photo = (ImageView) findViewById(R.id.selected_photo);
Uri photoUri = Uri.parse(photoPath);
                        selected_photo.setImageBitmap(MediaStore.Images.Media.getBitmap(getContentResolver(),photoUri));

但是它显示的图像不透明。 如何在不损失透明度的情况下显示PNG图像?

MediaStore API可能会丢弃alpha通道(即,解码为RGB565)。 如果您有文件路径,则直接使用BitmapFactory,但告诉它使用保留alpha的格式:

BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(photoPath, options);
selected_photo.setImageBitmap(bitmap);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM