2017-08-28 100 views
-1

我从.xml文件获取的ImageView对象:如何在ImageView中显示Image?

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

我记录从摄像机多次的第二拍摄的图像。对于每个新图像帧,调用以下方法。

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

我想将图像放入图像视图:如何做到这一点?

+0

更多详情please ....'image'位于哪里?在应用程序上下文中?在画廊? – DroiDev

+1

https://stackoverflow.com/q/26673127/115145 – CommonsWare

+0

@DroiDev,图像是从相机拍摄的。我更新了这个问题。 – mercury0114

回答

1
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); 

这应该起作用。

Reference Answer

+0

嗯,这不会成功地将图像对象转换成位图对象,但图像不显示在屏幕上。 – mercury0114

+0

我认为你将需要重写onActivityResult方法。了解更多。 – DroiDev