[英]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.