限定符屏幕尺寸过小不适用于变暗

时间:2019-11-13 10:52:23

标签: android

我是Android开发的新手,目前正在为我的应用程序支持不同的屏幕尺寸和像素密度。现在,我有一个高度为@dimen/button_height的按钮。 在dimens.xml中,我具有以下资源:

<resources>
    <dimen name="button_height">55dp</dimen>
</resources>

现在,我在不同的屏幕尺寸上尝试了该应用程序,并注意到,例如在3.3英寸WQVGA上,按钮太大。此设备为240x400 px ldpi,即320x533 dp

我阅读了App resources overviewSupport different Screen Sizes(我不得不说,对100%的设备配置支持尚不十分清楚)。据此,该设备的screen-sizesmall,所以我用

制作了另一个资源文件dimens.xml (small)
<resources>
    <dimen name="button_height">30dp</dimen>
</resources>

现在,当我在模拟器上尝试此操作时,按钮仍然高55dp。那么,我理解错了什么?什么是支持较小设备的更好方法?

2 个答案:

答案 0 :(得分:1)

基本上, 首先了解px,dp,sp等之间的区别。

首选下面的链接

https://stackoverflow.com/a/2025541/6997819

1) 支持多种屏幕尺寸

您需要创建

values-hdpi
values-xhdpi
values-xxhdpi
values-xxhdpi
  

注意:我建议除了上面的四个基本知识以外。

每个值目录将有自己的dimen.xml文件

假设

dimen.xml中的

values-hdpi文件具有

<dimen name="button_height">55dp</dimen>

然后在dimen.xml内的values-xhdpi文件中,理想情况下应增加大小

<dimen name="button_height">60dp</dimen>

现在,当您执行代码时,设备将根据其屏幕密度自动选择。

2)请参阅下面的链接

https://github.com/intuit/sdp

这将省去您的上述挣扎。 机制相同,但是提供了易于导入和使用的gradle。

答案 1 :(得分:0)

您可以使用ssp库来缩放字体大小,并使用sdp库来缩放尺寸大小。