Android:为不同的设备/屏幕尺寸设置不同尺寸的神秘技术

时间:2015-02-13 05:05:19

标签: android

我的第一个Android应用。并且,我试图让这个排序 - >为不同的屏幕/设备大小设置不同的文本大小,布局大小。现在,我Googl'ed了很多,然后读了几个Stackoverflow线程,&我这样做: 在'res'下创建了不同的文件夹 值,LDPI 价值观MDPI 值,华电国际 价值观xhdpi 价值观xxhdpi 值-xxxhdpi

然后我放了一个dimens.xml&上面每个文件夹中的styles.xml。

唷!但这还不够。对于手机和手机,我想要有不同的文本(和其他尺寸,我不是在谈论图像)。不同的平板电脑。我知道有这些'值 - sw600dp,'值-sw720dp',他们说这是针对平板电脑。但即使在每个平板电脑尺寸内,我也需要区分不同的密度吗?例如,在'values-sw600dp'中,我需要有不同的文本,例如,hdpi,xhdpi,...我该怎么做?有什么帮助吗?

这是一个正在做的事情的例子:

    TextView textView = (TextView) findViewById(R.id.text_interference);
    textView.setHeight(layoutHt);
    textView.setWidth((layoutWd-20)/2);
    int dimensControlButtonTextSize = getResources().getInteger(R.integer.CONTROL_BUTTON_TEXT_SIZE);
    textView.setTextSize(dimensControlButtonTextSize);

然后在dimens.xml中,它将是:     17

此值,即此处的17,将在每个设备中不同,即在每个values-文件夹下的每个dimens.xml中给出不同的值。我希望很清楚。

1 个答案:

答案 0 :(得分:0)

每个屏幕配置不需要复制可绘制资源,除了特殊情况,例如你有一个全屏幕启动画面,它会以不同的方式显示在横向和纵向上。通常对于图标,在主资源文件夹中指定一次(在hdpi,mdpi,xhdpi,xxhdpi ......下)就足够了。

我会发现屏幕配置特定资源对dimen值有用,比如填充,边距,项目宽度等等。