1

カスタム カメラに大きな問題があるため、ここに来ました。画像が引き伸ばされています。寸法から問題を解決しましたが、解決していません。

写真で問題を示したい場合は、投稿します

これは私のコードです:

public class CameraActivity extends Activity{

private SurfaceView surface_view;
private Camera mCamera;
SurfaceHolder.Callback sh_ob = null;
SurfaceHolder surface_holder        = null;
SurfaceHolder.Callback sh_callback  = null;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    getWindow().setFormat(PixelFormat.TRANSLUCENT);

    surface_view = new SurfaceView(getApplicationContext());
    addContentView(surface_view, new WindowManager.LayoutParams(WindowManager.LayoutParams.FILL_PARENT, WindowManager.LayoutParams.FILL_PARENT));

    if (surface_holder == null) {
        surface_holder = surface_view.getHolder();
    }

    sh_callback = my_callback();
    surface_holder.addCallback(sh_callback);
}

SurfaceHolder.Callback my_callback() {
    SurfaceHolder.Callback ob1 = new SurfaceHolder.Callback() {

        @Override
        public void surfaceDestroyed(SurfaceHolder holder) {
            mCamera.stopPreview();
            mCamera.release();
            mCamera = null;
        }

        @Override
        public void surfaceCreated(SurfaceHolder holder) {
            mCamera = Camera.open();

            try {
                mCamera.setPreviewDisplay(holder);
            } catch (IOException exception) {
                mCamera.release();
                mCamera = null;
            }
        }

        @Override
        public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
            mCamera.startPreview();
        }
    };
    return ob1;
}

}

助けてくれてありがとう:D

4

1 に答える 1