android camera preview方向

在surfacechange中执行:

int mDisplayRotation = 0;
		int mDisplayOrientation = getWindowManager().getDefaultDisplay().getRotation() * 90;
		CameraInfo mCameraInfo = new CameraInfo();
		Camera.getCameraInfo(Camera.CameraInfo.CAMERA_FACING_BACK, mCameraInfo);
		int mCameraOrientation = mCameraInfo.orientation;
		if (mCameraInfo.facing == CameraInfo.CAMERA_FACING_BACK) {
			mDisplayRotation = (mCameraOrientation - mDisplayOrientation + 360) % 360;
		} else {
			mDisplayRotation = (mCameraOrientation + mDisplayOrientation) % 360;
			mDisplayRotation = (360 - mDisplayRotation) % 360;
		}
		mCamera.setDisplayOrientation(mDisplayRotation);

猜你喜欢

转载自bgj.iteye.com/blog/1966013