目前,我正在开发Android应用程序(仅限手机),并且只针对不同的屏幕尺寸使用一种尺寸,即:
dimens.xml
:
<dimen name="button_size">48dp</dimen>
<dimen name="text_size">16sp</dimen>
所以在不同的屏幕尺寸中,我们只有一个尺寸的组件。我们转到这个结果:在小型设备中,textview
可以包含10个字符,但在较大的设备中,textview
可以包含20个字符
一些开发人员使用gradle
脚本根据主dimens
文件在不同文件夹中生成多个dimens
文件,如下所示:
values-sw320dp
dimens.xml
:
<dimen name="button_size">48dp</dimen>
<dimen name="text_size">16sp</dimen>
values-sw480dp
dimens.xml
:
<dimen name="button_size">52dp</dimen>
<dimen name="text_size">20sp</dimen>
...
因此系统将根据设备大小使用dimens
。我们得出这个结果:在小型设备和更大的设备中,textview
可以包含相同的字符,即:12个字符。
我的问题是:哪个更适合UI,UX? (使用Google Material Design)
答案 0 :(得分:0)
您可以尝试以下操作,这将根据设备自动设置。
?android:attr/textAppearanceMedium
- 适用于中号字体
?android:attr/textAppearanceSmall
- 适用于小字体
?android:attr/textAppearanceLarge
- 适用于大字体
请检查Material guidelines,为了确保残障人士的可用性,给按钮高36dp,并给予可触摸目标最小高度48dp。
答案 1 :(得分:0)
最佳做法是为不同的设备使用不同的尺寸文件。这将帮助您在不同设备上应用视图相同。如果您为不同的设备保持相同的尺寸,那么也可能出现布局问题。在某些设备中,您的布局看起来非常精细,但在另一个设备中看起来非常糟糕。
Android开发者网站还建议使用不同的布局来支持不同的设备。
答案 2 :(得分:0)
您可以使用此库来支持多个屏幕尺寸here