mercury0114
mercury0114

Reputation: 1459

How to display an `Image` in the `ImageView`?

I have an ImageView object acquired from the .xml file:

mCameraView = (ImageView) findViewById(R.id.camera_view);

I record an image taken from the camera many times a second. For each new image frame the following method gets called.

@Override
public void onImageAvailable(ImageReader reader) {
    Image image = reader.acquireLatestImage();
    mCameraView.somehowDisplay(image); // HOW?
}

I want place the image into the image view: How to do that?

Upvotes: 1

Views: 1294

Answers (1)

Programming Pirate
Programming Pirate

Reputation: 654

ByteBuffer buffer = image.getPlanes()[0].getBuffer();
byte[] bytes = new byte[buffer.remaining()];
buffer.get(bytes);
Bitmap myBitmap = BitmapFactory.decodeByteArray(bytes,0,bytes.length,null);
mCameraView.setImageBitmap(myBitmap);

This should work.

Reference Answer

Upvotes: 1

Related Questions