2012-04-17 67 views
0

我正在使用android手機開發自助終端系統。方便地使用肖像模式作爲標準,並且如果將其旋轉到我的需要,將隨傳感器切換到風景。我的問題是,這種設備編程的佈局會在運行時並排執行許多並行效果,因爲它總是會切換到縱向,然後記住傳感器方向並切換回風景。這意味着肖像模式的實施對我的發展並不是很舒服。 現在,我在開發工具看到的配置應用程序,它顯示我的設備配置:如何在android中更改設備方向?

orientation=1 

我的問題是:我有哪些文件進行編輯,更改設備定向標準景觀,使上面的應用將顯示我景觀。 (手機已根植)

我想從手機肖像模式切換到平板電腦橫向模式,而不僅僅是一個應用程序!

回答

4

你需要做的是編輯AndroidManifest.xml文件,並指定爲您的活動方位,以及手柄的方向改變自己:

<activity android:name="MyActivity" 
      android:label="@string/app_name" 
      ... 
      android:configChanges="orientation|keyboardHidden" 
      ... 
      android:screenOrientation="landscape"> 

那麼你的活動將一直在風景模式下運行不管設備方向。

編輯:如果你想以編程方式啓用/禁用自動旋轉,那麼你可以使用此代碼:

public static void setAutoOrientationEnabled(ContentResolver resolver, boolean enabled) 
{ 
    Settings.System.putInt(resolver, Settings.System.ACCELEROMETER_ROTATION, enabled ? 1 : 0); 
} 

但是請注意,這會影響到設備上運行的所有應用程序。

+0

添加謝謝你的答案。如果我離開我的申請並因此離開清單,我的副作用就來了。所以我正在尋找一個系統文件,我可以將安裝的android更改爲平板模式和風景。應用程序本身正在處理您的答案,但並未解決硬件問題。我有另一個平板與相同的Android版本,這是阿爾維斯在橫向模式,但我不知道在哪裏改變這個:( – 2012-04-17 10:04:12

+0

如果我明白這一點,你想這樣設置模式在你的代碼爲每個表,一旦景觀和另一幅肖像是正確的? – 2012-04-17 10:09:45

+1

不,我想保留我的手機硬件作爲示例演示,而不是使用橫向模式構建平板電腦。我想將Android的系統配置更改爲平板橫向模式,就像我將改變全局新聞部在建設。概率文件。 – 2012-04-17 10:11:51

0

如果你想保持方位景觀,在您的Manifest.xml補充一點:

<activity android:name="MyActivity" android:screenOrientation="landscape"></activity> 
+0

謝謝,但我想改變它全球,而不是在一個單一的應用程序。 – 2012-04-17 10:08:18

2

嗨這是你在找什麼?這會將應用程序定位爲景觀。

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

+0

不,現在看看我的問題: orientation = 1在devtools中的肖像模式 orientation = 2 for landscape devices這意味着某處必須更改設備的此值,例如/system/build.prop文件中的DPI設置。您的代碼會像傳感器一樣執行運行時更改。我想要系統設置。顯示我的方向的應用程序向我展示了DPI設置,但我不知道涉及的文件。 – 2012-04-17 11:52:50

+1

這就是Google在將我帶到此頁面時所尋找的內容......所以+1。 – 2013-09-17 00:21:53

0

這線程是5歲老 - 我回答,以幫助這裏以後有人把手.. 我想這裏的每個ANS有關應用程序特定的方向變化談判。下面是你應該考慮一下改變方向爲全設備

運行時:在/system/build.prop添加: -

# Makes portrait only 
persist.panel.orientation=90 

要在構建樹添加:在相同

device/<vendor>/<processor>/system.prop 
相關問題