2011-02-03 14 views
0

SDカードに透明なPNG画像を保存しました。今私は表示したいです。私はそのために以下のコードを使用していました。AndroidのSDカードからPNG画像を表示

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

しかし、表示されない透明な画像です。どのように透明度を失うことなくPNG画像を表示するには?

答えて

5

MediaStore APIがアルファチャンネルを捨てている可能性があります(つまり、RGB565にデコードする)。あなたはファイルパスをお持ちの場合は、単に直接BitmapFactoryを使用しますが、アルファを保持する形式を使用することを教え:

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

私の場合で働いていたわけではありません。 – Abhishek

関連する問題