2016-05-25 9 views
1

私はbase64イメージをビットマップイメージに変換し、ピカソライブラリを使用してリサイクラビューにロードしようとしています。しかし、ピカソメソッドにURIを渡す必要があるというコードを実行すると、エラーが発生します。base64をビットマップに変換してリサイクラビューに読み込む

public String getImage(){ 
     Context context =null; 

     byte[] decodedString = Base64.decode(image, Base64.URL_SAFE); 
     Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); 


     ByteArrayOutputStream bytes = new ByteArrayOutputStream(); 
     decodedByte.compress(Bitmap.CompressFormat.PNG, 100, bytes); 

     path = MediaStore.Images.Media.insertImage(context.getContentResolver(), decodedByte, null, null); 
     return Uri.parse(path);  
} 

のDataAdapter:

Picasso.with(context).load(data.get(i).getImage()).into(holder.reportImage); 

答えて

0

あなたがダウンロードして、ビットマップをデコードしたら、画像の読み込みライブラリを使用する意味がありません。すべての利点(要求キューとキャッシュ)は失われます。単純に使用することができますholder.reportImage.setImageBitmap(bmp);

もう1つの方法は、ダウンロード後にbase64データをデコードするカスタムRequestHandlerを書き込むことです。

関連する問題