我是一个新手android开发人员。最近我正在阅读谷歌提供替代资源以支持不同屏幕尺寸的规范。
https://developer.android.com/training/multiscreen/screensizes.html
我知道我们可以提供具有特定限定符的资源目录来实现这一点,
例如layout-sw320dp/layout.xml
,layout-sw480dp/layout.xml
,layout-sw600dp/layout.xml
。
同时,我还发现一些开发人员在dimens.xml
文件夹中使用不同的屏幕尺寸限定符创建各种values
,
例如values-sw320dp/dimens.xml
,values-sw480dp/dimens.xml
,values-sw600dp/dimens.xml
。
我想知道哪种方法更适合维护布局。我的直觉告诉我,如果我用不同的layout.xml
控制屏幕尺寸渲染。然后我不需要使用dimens.xml
来适应不同的屏幕尺寸。这是一个正确的想法吗?
如果唯一改变的是大小,你应该使用dimens.xml。如果要更改实际视图,则应使用layout.xml。
为什么?因为维护。如果在3个月内您决定要更改视图的背景颜色并且您有4个布局文件,则需要在4个位置进行更改。最终你会忘记一个。如果你正确使用了尺寸,你只需要在一个地方改变它。
尽可能使用尺寸。