2012-10-22 67 views
2

我的申請,我使用Android原生相機和利用表面查看預覽圖像。在我的情況下,除了相機的方向,一切都在工作。當我通過設置screenOrientation =打開攝像頭。「清單文件我收到預覽,而不在橫向模式下任何問題的風景,但我需要像在縱向模式下,爲了這個,我改變了我的表現像Android這樣:screenOrientation =」畫像」並改變我的代碼就像mCamera.setDisplayOrientation(90),params.set(「方向」,「風景」),params.set(「旋轉」,90),但還是我得到90度旋轉圖像。 我的代碼是相機方向不改變的Android 2.3

public void setupCamera(int width, int height) { 
    Log.i(TAG, "setupCamera"); 
    synchronized (this) { 
     if (mCamera != null) { 
      Camera.Parameters params = mCamera.getParameters(); 
      List<Camera.Size> sizes = params.getSupportedPreviewSizes(); 
      List<Camera.Size> imgsize=params.getSupportedPictureSizes(); 
      mFrameWidth = width; 
      mFrameHeight = height; 

      // mCamera.setDisplayOrientation(90); 
      params.set("orientation", "landscape"); 
      params.set("rotation", 90); 
      // selecting optimal camera preview size 
      { 
       int minDiff = Integer.MAX_VALUE; 
       for (Camera.Size size : sizes) { 
        if (Math.abs(size.height - height) < minDiff) { 
         mFrameWidth = size.width; 
         mFrameHeight = size.height; 
         minDiff = Math.abs(size.height - height); 
        } 
       } 
      } 

      params.setPreviewSize(getFrameWidth(), getFrameHeight()); 




      List<String> FocusModes = params.getSupportedFocusModes(); 
      if (FocusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) 
      { 
       params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO); 
      }    

      mCamera.setParameters(params); 



      mCamera.startPreview(); 
     } 
    } 
} 

我使用福邦A 52模型... 任何一個請幫助.....

回答

2

如果您的應用程序上運行2.2版或以上,您可以旋轉相機方向爲縱向使用camera.setDisplayOrientation(90)

對於其他人:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) 
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

//After opening camera - call via reflection 
Method rotateMethod = android.hardware.Camera.class.getMethod("setDisplayOrientation", int.class); 
rotateMethod.invoke(mCamera, 90); 

有關詳細信息,請參閱本linkthis
希望這將有助於

+0

Hi..Thanks您的回覆.....我試過以上,但仍如果您使用此代碼,那麼現在我想你應該刪除所有這與轉碼圖像旋轉... – Haris

+0

。 – juned

+0

我做到了,但沒有變化........ – Haris