2012-08-08 94 views
6

我遇到問題。初始化相機進行預覽並將其他應用程序引入焦點後,返回到我的應用程序:預覽顯示爲黑色。如果我繼續拍攝照片,它會拍攝照片,我正常指向相機的位置。OnResume Camera Reinit黑色屏幕

我在OnResume()重寫上做錯了什麼?相對代碼如下:

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(); 
    } 

感謝您的幫助。 :)

回答