在android中是否有可能在XML中定义随配置而变化的常量

我有兴趣在Android中更改大小的XML布局,具体取决于横向或纵向查看(以及稍后可能的其他配置)。

 

在这个例子中,我只想根据风景或肖像改变150dip大小,而不是改变其他任何东西。

我正在使用layout和layout-land,我知道我可以在每个文件夹中重复布局,但这使得维护它的变化有点痛苦。 当我根据屏幕密度和大小引入更多变体时,它会变得更糟。

所以,我想知道是否可以在XML文件中定义一个值(常量),并从我的布局中引用它,类似于如何定义颜色

    #FFFFFF  

…… ……

   150  

然后我可以在每个配置中复制具有不同值的文件。

谢谢你的帮助

是。 维度是资源文件中的已接受项目。 所以创建例如res / values / dimension.xml并放入

 < ?xml version="1.0" encoding="utf-8"?>  150dp  

是的,你可以这样做,我们在Android本身的所有地方都这样做:)只需在res / values /,res / values-land /等中定义你的常量。对于尺寸,使用标签并使用@ dimen /引用它们布局中的my_value。