相关疑难解决方法(0)

Android摄像头预览在方形屏幕上拉伸

我正在为Android构建一个应用程序,但该设备有一个方形屏幕.屏幕为320x320,相机应用程序使用SurfaceView显示预览,如下所示:

    mCameraView = (SurfaceView) findViewById(R.id.surface);
    LayoutParams params = mCameraView.getLayoutParams();
    int camera_dimension = getResources().getInteger(R.integer.camera_dimension);
    params.height = camera_dimension; //320px
    params.width = camera_dimension;

    mCameraView.setLayoutParams(params);
    mCameraViewHolder = mCameraView.getHolder();
    mCameraViewHolder.addCallback(this);
    mCameraViewHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
Run Code Online (Sandbox Code Playgroud)

在Surface上改变了,我正在做这个并且它可以工作,但支持者预览是w480 x h320

public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {

    int mWidth = w;
    int mHeight = h;
    int mFormat = format;

    try {
        mCameraAccess.mCamera.stopPreview();
    } catch (Exception e){
        // ignore: tried to stop a non-existent preview
    }
    Camera.Parameters param = mCameraAccess.mCamera.getParameters();

    List<Camera.Size> SupportedPreview = param.getSupportedPreviewSizes();
    int ScreenSize = getResources().getInteger(R.integer.camera_dimension); …
Run Code Online (Sandbox Code Playgroud)

android surfaceview android-camera

5
推荐指数
1
解决办法
1497
查看次数

标签 统计

android ×1

android-camera ×1

surfaceview ×1