2012-08-08 13 views
6

Tengo un problema. Después de inicializar la cámara para obtener una vista previa y enfocar otra aplicación, vuelva a mi aplicación: la vista previa aparece en negro. Si continúo para tomar una foto, toma una foto de hacia dónde apunto la cámara normalmente.OnResume Camera Reinit Black Screen

¿Estoy haciendo algo mal en la anulación de OnResume()? código relativa es inferior:

public void ReleaseCamera() 
    { 
     if (myCamera != null) 
     { 
      myCamera.Release(); 
      myCamera = null; 
     } 
    } 

protected override void OnPause() 
    { 
     base.OnPause(); 

     if (myButtonState == ButtonState.CameraActive) 
      ReleaseCamera(); 
    } 

protected override void OnResume() 
    { 
     base.OnResume(); 

     if (myButtonState == ButtonState.CameraActive) 
      InitializeCamera(); 
    } 

private void InitializeCamera() 
    { 
     SurfaceView mySurfaceView = FindViewById<SurfaceView>(Resource.Id.surfaceView1); 

     myCamera = Android.Hardware.Camera.Open(cameraNumber); 
     Android.Hardware.Camera.Parameters p = myCamera.GetParameters(); 

     myCamera.SetDisplayOrientation(90); // Portrait 
     myCamera.SetPreviewDisplay(mySurfaceView.Holder); 
     myCamera.StartPreview(); 
    } 

Gracias por su ayuda. :)

Respuesta