当我有一个900 is的设备时,当我在api级21+上运行时,当一个布局文件出现在所有这些文件夹下时,
res/layout/
res/layout-sw801dp/
res/layout-v21/哪一个会被接走,为什么?
发布于 2021-02-10 00:18:29
看看Android概述,特别是提供替代资源。表2描述了可用的资源限定符。据说,
表2按优先顺序列出了有效的配置限定符.
因此,查看该列表,您可以在以下目录中定义资源:
res/布局/:默认值
res/布局-sw801dp/:最小宽度
res/layout-v21/ : version 21及以上
优先级顺序是可变的,对资源的搜索将在第一次匹配时停止。
res/布局-sw801dp/
res/布局-v21/
res/布局/
由于屏幕的宽度为900 at,因此搜索资源将停止在res/layout-sw801dp,因为900 at是>= 801dp。如果屏幕宽度为700 If (<801dp)和API级别的21+,搜索将停止在res/lay-v21/。如果版本是,假设API 18和屏幕宽度700 be,则将使用res/layout/。
https://stackoverflow.com/questions/66124702
复制相似问题