2014-03-06 122 views
0

我需要在我的應用程序中顯示相機預覽,以便按下按鈕拍攝照片。 所以我把一個漂亮的「標準」相機預覽課。問題是我必須將其放在橫向模式下,以便預覽可以在整個屏幕上展開。如果處於肖像模式,它將只保留在屏幕的中心,只有它的一小部分。如果這可以更容易解決,我願意提供建議。如何檢測android中縱向模式中的方向更改?

但我的問題是。如果鎖定在橫向模式下,我如何檢測屏幕旋轉,以便我可以相應地旋轉按鈕的文本? 我試過

@Override 
public void onSensorChanged(SensorEvent event) 
{ 
    Log.d("onSensorChanged"); 
    Log.d("event:" + event); 

} 

但我沒有得到任何結果。

+0

我用從該鏈接的解決方案:[鏈接](http://stackoverflow.com/questions/5157984/android -camera-surfaceview方位)。它使用onOrientationChanged。感謝所有回覆的人 – user3195199

回答

1

使用OrientationEventListener

所有的
orientationListener = new OrientationEventListener(context, SensorManager.SENSOR_DELAY_UI) { 
    public void onOrientationChanged(int orientation) { 
     //do something 
    } 
}; 
0

首先,你應該知道發生什麼事,每當屏幕模式改變。

當屏幕模式再次改變其視圖時,這意味着如果我們可以檢測到屏幕模式,我們可以更改佈局文件或在onCreate()中執行其他操作。

如何檢測屏幕模式。

if(getResources().getConfiguration().orientation==Configuration.ORIENTATION_LANDSCAPE) { 
    //do something 
} 

配置類有不同的方向在開發人員站點上進行常量檢查。

0

使用這種簡單的方法...

if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) 
{ 
    // your code 
} 

OR

if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) 
{ 
    // your code 
} 
相關問題