2011-12-27 59 views
1

我有一个使用屏幕特定布局(仅适用于HVGA)的向后兼容应用程序。我的布局结构如下: res/layout res/layout-480x320(对于HVGA) layout-480x320包含一些特殊的XML。HVGA(480x320)布局在超高密度Android ICS设备(Samsung Galaxy Nexus)中呈现

清单如下:

<uses-sdk android:minSdkVersion="7" 
android:targetSdkVersion="11" 
android:maxSdkVersion="15"/> 

当我在的Galaxy Nexus(720x1280)运行这个程序,将kayout从文件夹小480x320拍摄。我已经将其构建在2.1目标和4.0目标上。两者都得到相同的结果。 任何人都可以请帮忙。

回答

1

这是对ICS 4.0(或可能是3.2)所做的修改。

Pre ICS: 如果您指定“layout-480x320”,它会找到并完全匹配并从该文件夹中取出,如果您的设备是HVGA的,否则它将回退到“layout”文件夹。

ICS: 如果指定“layout-480x320”,Android认为此布局适用于任何“相同或高于”480x320的分辨率,因此它不会回退到“layout”文件夹。所以你必须提供更高分辨率的另一个文件夹。

所以,现在它不是完全匹配,而是基于“范围”的匹配。 我不知道这是一个功能还是错误。但通过文档看来,这是一个功能。 :)