private void UpdateCameraAspect() { try { Android.Hardware.Camera.Parameters camParams = camera.GetParameters(); Android.Hardware.Camera.CameraInfo info = new Android.Hardware.Camera.CameraInfo(); Android.Hardware.Camera.GetCameraInfo((int)Android.Hardware.CameraFacing.Back, info); Android.Hardware.Camera.Size size = GetOptimalPreviewSize(camParams.SupportedPreviewSizes, width, height); camParams.SetPreviewSize(size.Width, size.Height); int rotation = (info.Orientation + 360) % 360; camParams.SetRotation(rotation); if (camParams.SupportedFocusModes.Contains(Android.Hardware.Camera.Parameters.FocusModeContinuousPicture)) { camParams.FocusMode = Android.Hardware.Camera.Parameters.FocusModeContinuousPicture; } camera.SetParameters(camParams); } catch (System.Exception e) { System.Console.WriteLine(e.Message); } }
//初始化相机 private void initCamera() { mCamera.StopPreview(); if (null != mCamera) { Android.Hardware.Camera.Parameters myParam = mCamera.GetParameters(); //设置大小和方向等参数 myParam.SetPreviewSize(1280, 720); myParam.SetPictureSize(640, 480); myParam.SetRotation(90); myParam.Set("iso", 100); myParam.Set("jpeg-quality", 100); myParam.Zoom = 14; mCamera.SetDisplayOrientation(90); mCamera.SetParameters(myParam); mCamera.StartPreview(); //mCamera.SetPreviewCallback (this); } }