我不確定是否已經很好地理解了幾個Android /res/layout
文件夾所扮演的角色。Android佈局文件夾:佈局,佈局端口,佈局區域
layout
:一般佈局
layout-port
:佈局控件必須爲縱向
layout-land
改變:佈局控件必須在Home示例應用程序的橫向
改變。例如,在layout-port
和layout-land
文件夾下只有一個home.xml
文件。
我理解對不對?
我不確定是否已經很好地理解了幾個Android /res/layout
文件夾所扮演的角色。Android佈局文件夾:佈局,佈局端口,佈局區域
layout
:一般佈局
layout-port
:佈局控件必須爲縱向
layout-land
改變:佈局控件必須在Home示例應用程序的橫向
改變。例如,在layout-port
和layout-land
文件夾下只有一個home.xml
文件。
我理解對不對?
如果您處於橫向或縱向狀態,則首先在-port或-land目錄中查找佈局文件,如果找不到則返回到默認佈局目錄。
你可以閱讀關於提供替代資源here。除陸地和港口外,還有更多的選擇。
如果您將home.xml
放入layout-port
文件夾中,當您的設備處於縱向時,它將使用文件:layout-port/home.xml
。
如果您將home.xml
置於layout-land
文件夾中,則當您的設備處於橫向模式時,它將使用文件:layout-land/home.xml
。
對於不同的方向模式(如縱向和橫向)的含義...我們使用兩個home.xml
文件;一個在layout-port
,另一個在layout-land
。另一方面,如果您想爲兩者使用相同的佈局文件,則可以將home.xml
放在layout
文件夾中,並將其從layout-land
和layout-port
中刪除。
我已經爲layout和layout-land製作了分開的佈局xml文件。但是當我將方向更改爲橫向時,它的佈局文件不會被android顯示。問題是什麼? – YuDroid 2012-07-09 05:58:37
如果您在-port和-land中有兩個佈局文件,並且在更改設備方向時它們不會切換,那麼您可能在AndroidManifest.xml中指定了android:configChanges =「orientation」。在這種情況下,再次指定onConfigurationChanged()中的setContentView()或刪除該AndroidManifest.xml指令。 – 2012-07-17 08:37:07
在res layout-land
或layout-port
layout-port:
佈局小部件必須爲縱向改變
layout-land:
佈局小部件必須爲橫向改變
一些開發商可能沒有意識到創建文件夾掌握這個概念有多重要,所以謝謝把它放在SO上。 – whyoz 2013-04-08 19:08:25
我的理論HTML5將在未來取代這個東西。 – neferpitou 2015-03-01 01:32:07