2011-01-04 6 views
4

Je souhaite afficher une image enregistrée dans la base de données sous forme de blob sur mon Android. J'utilise ImageView comme conteneur d'image. S'il vous plaît me suggérer quelque chose bientôt.Comment afficher une image blob sous Android?

Cordialement, Rahul

Répondre

4

Fondamentalement, il y a deux options:

  1. mémoire tampon de lecture de pellicule blob dans InputStream de sorte que vous aurez InputStream qui pointera les données BLOB
  2. Enregistrer les données BLOB temporaire fichier l'ouvrir en tant que FileInputStream - donc à la fin vous aurez à nouveau flux sur les données d'image

dans les deux cas vous peut facilement convertir InputStream en données bitmat d'une manière:

InputStream is; //stream pointing to your blob or file 
//... 
imageView=new ImageView(this); 
imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE); 
imageView.setAdjustViewBounds(true); 
imageView.setImageBitmap(BitmapFactory.decodeStream(is)); 
+0

Merci Barmaley, j'ai essayé la 2ème option. Comme je reçois ces données par l'intermédiaire d'un service Web, je reçois une exception de cast de classe quand j'affecte ma propriété d'objet de réponse à InputStream comme: InputStream est = (InputStream) response.getProperty (7); que faire dans ce cas – Rahul

+0

Rahul, vous feriez mieux de commencer dès le début ... – barmaley

+1

Oui, mais comment puis-je convertir un blob dans le flux d'entrée? Cette partie est omise ... – Redax

Questions connexes