Using android.view.SurfaceView with a camera on part of the screen

后端 未结 3 760
清酒与你
清酒与你 2020-12-08 23:54

I trying to put together an Android app that will take a picture and process it in some way. I\'d like the layout to be similar to Google Goggles. Meaning, camera preview

3条回答
  •  孤街浪徒
    2020-12-09 00:27

    Yes you can use a surfaceView. From the surfaceView you can get the SurfaceHolder which then can be used to set the camera's previewDisplay.

            SurfaceView preview = (SurfaceView) findViewById(R.id.cameraPreview);
        SurfaceHolder previewHolder = preview.getHolder();
        previewHolder.addCallback(surfaceCallback);
        previewHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    

    You'll need to implement the SurfaceHolder.Callback method in order to update the preview size properly. In surfaceCreated set the previewDisplay of the camera. On surfaceChanged update the previewSize for the camera.

    camera.setPreviewDisplay(previewHolder);
    

    In fact the example mentioned before is a very good reference!

提交回复
热议问题