예제 #1
0
        public void SurfaceChanged(ISurfaceHolder holder, Android.Graphics.Format format, int width, int height)
        {
            try
            {
                var parameters = Preview.GetParameters();
                parameters.SetPreviewSize(previewSize.Width, previewSize.Height);
                RequestLayout();
                switch (windowManager.DefaultDisplay.Rotation)
                {
                case SurfaceOrientation.Rotation0:
                    camera.SetDisplayOrientation(90);
                    break;

                case SurfaceOrientation.Rotation90:
                    camera.SetDisplayOrientation(0);
                    break;

                case SurfaceOrientation.Rotation270:
                    camera.SetDisplayOrientation(180);
                    break;
                }

                Preview.SetParameters(parameters);
                Preview.StartPreview();
                IsPreviewing = true;
            }
            catch (Exception ex)
            {
            }
        }