2011-01-20 39 views
0

斐伊川Android中

我想知道的機制如何屏幕的變化,從水平到垂直或反之亦然如何自動屏幕自動變化,從水平到Android的垂直或反之亦然當我們改變手機的位置。編碼方面的例子將非常可觀。

問候

的Piyush

回答

0

屏幕從縱向自動更改爲橫向,反之亦然。所以,在最簡單的情況下,你不必做任何事情。不過,有一件重要的事情需要考慮:

在定位更改上,Android終止當前活動並重新創建它。所以,如果你有一些重要的狀態變量,你必須保存它們。爲了做到這一點,你必須重寫功能

@Override 
public void onSaveInstanceState(Bundle stateToSave) 

當重新創建的實例,你必須檢查的savedInstanceState

@Override 
public void onCreate(Bundle savedInstanceState) 

值。如果它爲空,則是第一次啓動。如果它不爲空,則它是由旋轉引起的重新創建,並且您必須從Bundle savedInstanceState中獲取狀態變量值。

如果您需要不同的縱向/橫向佈局,請檢查Anand的答案。

0

如果我理解正確的話你不問如何改變自己的佈局(答案可能是你加布局土地DIR爲您XML),或如何在屏幕變化上做一些代碼(答案可能是使用onConfigurationsChange),但是當用戶打開手機時,你是在問如何完成屏幕的轉動?

那麼,答案是:系統這樣做,你不必做任何事情。它會自動做到這一點

0

我認爲你應該做以下事情:

1)。創建文件夾名稱「layout-land」將所有與橫向相關的xml放入肖像的「layout」文件夾中類似名稱的文件夾中。 2)。在活動中覆蓋onConfigurationChange方法。 3)。的setContentView(R.layout.layoutname)。 4)。在清單<activity android:name=".screenname" android:configChanges="orientation" > </activity>