1.採用不同的布局檔案
在res下建立目錄layout-land
在該目錄下寫入的layout(xml檔案)橫屏的時候系統自己主動選擇顯示的layout
同理:
在res下建立目錄layout-port
在該目錄下寫入的layout(xml檔案)即豎屏的時候系統自己主動選擇顯示的layout
快捷建立方法:
res檔案下
選中layout(目錄) Ctrl+C (複制)
選中res(目錄) Ctrl +V(粘貼)
建立layout-land橫屏顯示的layout
同理建立layout-port豎屏顯示的layout
圖檔橫屏豎屏
選中drawable-xhdpi Ctrl+C
選中res Ctrl + V
建立drawable-land-xhdpi
其它分辨率的也一樣
字元串
values-land
values-port
另外:(layout目錄也能夠使用hdip,mdip等keyword命名如layout-hdip,layout-mdip)
依據分辨率不同顯示不同的layout布局
2 強制橫屏豎屏顯示(不依據手機傳感器調整)
在<activity 裡面增加:
android:screenOrientation="Landscape"//橫屏//portrait豎屏
注意:
在橫屏豎屏切換過程中,Activity會被又一次建立
onCreate方法會又一次運作
假設沒有id的元件如編輯框等則橫屏填寫的編輯框中的資料,寫到一半後假設豎屏顯示,
資料會丢失
谷歌解決方式:
假設擁有id
會在第一次建立Activity。運作完onCreate()方法之後把id元件中相應的值暫時儲存存起來,
在旋轉後再次建立Activity時
可是是在 運作完onCreate()方法之後!
!!!
!
運作完之後!
!!
依據id找到相應的值填寫上去