323 votes

Obtenir Bitmap attaché à ImageView

Compte tenu de

ImageView image = R.findViewById(R.id.imageView);
image.setImageBitmap(someBitmap);

Est-il possible de récupérer l'image bitmap?

826voto

Arslan Points 6585
Bitmap bitmap = ((BitmapDrawable)image.getDrawable()).getBitmap();

46voto

Sarwar Erfan Points 11946

Ainsi, vous obtenez une image à partir de l'Imageview. Cependant, il n'est pas the image même de l'objet que vous définissez. C'est une nouvelle. (Ici image est l'ImageView dans votre extrait de code dans la question.

image.buildDrawingCache();
Bitmap bmap = image.getDrawingCache();

=== EDIT ===

 // I have used `imageView` as variable name for better understanding, 
 // though you have used `image`
 imageView.setDrawingCacheEnabled(true);
 imageView.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), 
                   MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
 imageView.layout(0, 0, 
                  imageView.getMeasuredWidth(), imageView.getMeasuredHeight()); 
 imageView.buildDrawingCache(true);
 Bitmap bmap = Bitmap.createBitmap(imageView.getDrawingCache());
 imageView.setDrawingCacheEnabled(false);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X