是否有必要在不同的值文件夹中使用相同的XML文件?

时间:2014-03-16 23:24:20

标签: android

我当前的资源文件夹层次结构如下所示:

res
 |__values
 |     |__analytics.xml
 |     |__dimens.xml
 |     |__strings.xml
 |     |__styles.xml
 |
 |__values-w400dp
 |     |__styles.xml
 |
 |__values-w700dp
       |__styles.xml

基本上,我有styles.xmlw400dp个屏幕的专门w700dp个文件。

我的问题是,我是否还必须将values文件夹中的其余文件(即analytics.xmldimens.xmlstrings.xml)复制到我的{{ 1}}和values-w400dp个文件夹?

如果我不复制它们,Android会在values-w700dp文件夹中使用这些文件吗?

2 个答案:

答案 0 :(得分:1)

默认情况下将使用values文件夹中的文件。因此,如果有人将您的应用与w700dp设备一起使用,则会使用:

 styles.xml from values-w700dp

 strings.xml from values
 analytics.xml from values
 dimens.xml from values

另见文档here。随意使用不同的设备/模拟器进行测试

答案 1 :(得分:1)

否..并非必须将所有文件保留在所有文件夹中。例如,如果具有400dp的设备需要在其相应文件夹中不存在的dimens.xml,则它会回退并尝试在默认文件夹中找到相同的文件(即值)。如果它无法到达那里,那么它会尝试在类似的文件夹中找到(例如values-w700dp)。如果它无法在任何地方找到它,那么它会显示错误。