//對(duì)攝像頭進(jìn)行矯正,使視圖正常
public static void setCameraDisplayOrientation(Activityactivity,
int cameraId, android.hardware.Cameracamera) {
android.hardware.Camera.CameraInfoinfo=
newandroid.hardware.Camera.CameraInfo();
android.hardware.Camera.getCameraInfo(cameraId,info);
int rotation=activity.getWindowManager().getDefaultDisplay()
.getRotation();
int degrees= 0;
switch(rotation) {
case Surface.ROTATION_0:degrees= 0;break;
case Surface.ROTATION_90:degrees= 90;break;
case Surface.ROTATION_180:degrees= 180;break;
case Surface.ROTATION_270:degrees= 270;break;
}
int result;
if(info.facing== Camera.CameraInfo.CAMERA_FACING_FRONT) {
result= (info.orientation+degrees) % 360;
result= (360 -result) % 360;// compensate the mirror
}else{// back-facing
result= (info.orientation-degrees+ 360) % 360;
}
camera.setDisplayOrientation(result);//顯示翻轉(zhuǎn)result度
}
在使用時(shí)稿湿,只需要傳入