Obtener mapa de bits adjunto a ImageView

Dado

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

¿Es posible recuperar el mapa de bits?

 Bitmap bitmap = ((BitmapDrawable)image.getDrawable()).getBitmap(); 

Esto le proporcionará un Bitmap de Bitmap de ImageView . Sin embargo, no es el mismo objeto de mapa de bits que ha establecido. Es una nueva.

 imageView.buildDrawingCache(); Bitmap bitmap = imageView.getDrawingCache(); 

=== EDIT ===

  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 bitmap = Bitmap.createBitmap(imageView.getDrawingCache()); imageView.setDrawingCacheEnabled(false); 

Otra manera de obtener un mapa de bits de una imagen es hacer esto:

 Bitmap imagenAndroid = BitmapFactory.decodeResource(getResources(),R.drawable.jellybean_statue); imageView.setImageBitmap(imagenAndroid); 

Este código es mejor.

 public static byte[] getByteArrayFromImageView(ImageView imageView) { BitmapDrawable bitmapDrawable = ((BitmapDrawable) imageView.getDrawable()); Bitmap bitmap; if(bitmapDrawable==null){ imageView.buildDrawingCache(); bitmap = imageView.getDrawingCache(); imageView.buildDrawingCache(false); }else { bitmap = bitmapDrawable .getBitmap(); } ByteArrayOutputStream stream = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, stream); return stream.toByteArray(); } 

Prueba este código:

 Bitmap bitmap; bitmap = ((BitmapDrawable)image.getDrawable()).getBitmap(); 
  • Zoom de TouchImageView ajustado a fotograma con Picasso
  • ListView haga clic para mostrar la imagen en ImageView
  • Glide hace que ImageView wrap_content sea inútil y sin animatiion usando target
  • Qué tamaño almacenar imagen en el servidor para utilizar con la aplicación de Android
  • Cómo utilizar addHeaderView para agregar un ImageView simple a un ListView
  • ImageView no se extiende (Android)?
  • El método ImageView: onDraw dibuja "detrás" del fondo de la imagen, no en la parte superior
  • Adición de Fling Gesture a una vista de imagen - Android
  • Cambiar la fuente de ImageView
  • ¿Cómo obtengo diferentes posiciones de clic en un solo ImageView
  • ImageView personalizado con sombra
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.