2

假设我在主要的非 DPI 特定布局资源文件夹中有一个布局,并且该布局执行一个<include>存在于 hdpi/mdpi/ldpi 文件夹中的子布局。我是否可以期望最终的膨胀布局根据设备 DPI 聚合 h/m/l-dpi 子布局,就像“完整”布局一样?

谢谢!

4

1 回答 1

0

虽然在发帖时我没有机会测试帖子的提议,但我有机会这样做,因此将回答我自己的问题,因为没有其他人这样做过。

是的,以下场景按预期工作(在 API 级别 8 测试):

布局/main.xml:

... <include layout="@layout/included"/> ...

布局/included.xml:

<merge xmlns:android="http://schemas.android.com/apk/res/android">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="GENERIC included fragment"/>
</merge>

布局-ldpi/included.xml:

<merge xmlns:android="http://schemas.android.com/apk/res/android">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="LOW-DPI included fragment"/>
</merge>

例如,在 QVGA 设备上运行应用程序会呈现一个视图,其中包含的部分根据需要来自 LDPI 目录,而非 LDPI 设备会从布局目录中获取默认部分。

于 2012-11-19T23:48:54.017 回答