Android相机的问题

时间:2011-08-23 09:26:19

标签: android camera

我正在android中使用相机构建一个应用程序。我已经构建了自己的相机,但问题是,一旦我以这种方式打开相机:

 public void surfaceCreated(SurfaceHolder holder) {
        Log.e(TAG, "surfaceCreated");
        mCamera = Camera.open();

    }

当手机处于portrait模式时,我的预览和拍摄的照片都旋转了90度,当手机处于横向模式时,一切看起来都很棒。有谁知道如何解决这个问题。

谢谢!

2 个答案:

答案 0 :(得分:1)

这类问题有一个公认的答案。您可能想要查看this

答案 1 :(得分:0)

<{3}}的

setRotation(int rotation)是你的朋友。

编辑:

您是否在文档中看到了参考代码:

public void public void onOrientationChanged(int orientation) {
     if (orientation == ORIENTATION_UNKNOWN) return;
     android.hardware.Camera.CameraInfo info =
            new android.hardware.Camera.CameraInfo();
     android.hardware.Camera.getCameraInfo(cameraId, info);
     orientation = (orientation + 45) / 90 * 90;
     int rotation = 0;
     if (info.facing == CameraInfo.CAMERA_FACING_FRONT) {
         rotation = (info.orientation - orientation + 360) % 360;
     } else {  // back-facing camera
         rotation = (info.orientation + orientation) % 360;
     }
     mParameters.setRotation(rotation);
 }