Android 布局设计:layout.xml vs dimens.xml

Android layout design: layout.xml vs dimens.xml

我是新手 android 开发人员。最近我正在阅读 Google 提供替代资源以支持不同屏幕尺寸的规范。

https://developer.android.com/training/multiscreen/screensizes.html

我知道我们可以提供带有特定限定符的资源目录来实现这一点,

例如layout-sw320dp/layout.xml,layout-sw480dp/layout.xml,layout-sw600dp/layout.xml.

同时,我还发现一些开发人员在 values 文件夹中创建各种 dimens.xml 具有不同屏幕尺寸限定符,

例如values-sw320dp/dimens.xml , values-sw480dp/dimens.xml, values-sw600dp/dimens.xml.

我想知道哪种方法更适合维护布局。我的直觉告诉我,如果我通过不同的 layout.xml 来控制屏幕尺寸渲染。然后我不需要使用 dimens.xml 来适应不同的屏幕尺寸。这是一个正确的想法吗?

如果唯一改变的是大小,您应该使用 dimens.xml。如果要更改实际视图,则应使用 layout.xml。

为什么?因为维修。如果在 3 个月后您决定要更改视图的背景颜色并且您有 4 个布局文件,则需要在 4 个地方进行更改。最终你会忘记一个。如果你正确使用dimens,你只需要改变1处。

尽可能使用维度。