> res / layout-sw600dp-land / main.xml
> res / layout-sw600dp-port / main.xml
> res / layout-sw720dp-land / main.xml
> res / layout-sw720dp-port / main.xml
> res / layout-xlarge-port / main.xml
> res / layout-xlarge-land / main.xml
> res / layout-port / main.xml
> res / layout / main.xml
因此,在这8个XML文件中存在大量代码重复,这些文件基本上只描述了两个不同的布局.
如何在不必维护所有这些重复的XML文件的情况下执行此操作,这是一个维护问题?
解决方法
现在,您必须将这些布局映射到不同的屏幕配置,这就是“布局别名”技术派上用场的地方.对于每个屏幕限定符组合,在res / values-X / layout.xml中创建XML文件,其中X是限定符组合.在该文件中,声明一个布局资源,指向@ layout / onepane或@ layout / twopanes,视情况而定:
RES /价值观sw600dp土地/ layout.xml:
<resources> <item name="main" type="layout">@layout/twopanes</item> </resources>
RES /值-sw600dp端口/ layout.xml:
<resources> <item name="main" type="layout">@layout/onepane</item> </resources>
对您的其他配置组合执行相同的操作,这样您就可以完成您正在寻找的内容:您可以将两个布局(onepane和twopane)映射到多个不同的屏幕配置,而无需复制布局.
有关此内容的更多信息,请查看Android培训的“支持多个屏幕”课程:
http://developer.android.com/training/multiscreen/screensizes.html#TaskUseAliasFilters