dev*_*oid 0 png transparency android image sd-card
我在SD卡中保存了一个透明的PNG图像.我现在要显示.我正在使用以下代码.
selected_photo = (ImageView) findViewById(R.id.selected_photo);
Uri photoUri = Uri.parse(photoPath);
selected_photo.setImageBitmap(MediaStore.Images.Media.getBitmap(getContentResolver(),photoUri));
Run Code Online (Sandbox Code Playgroud)
但它显示的是一个不透明的图像.如何在不丢失透明度的情况下显示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);
Run Code Online (Sandbox Code Playgroud)