0

我正在尝试支持我的应用程序适用于所有屏幕尺寸。我能够在某种程度上做到这一点,但现在面临为不同屏幕尺寸命名值文件夹的问题。设备 1) 密度 [1.3312501]
densityDpi [213] widthPixels[800] heightPixels [1280] xdpi [188.148] ydpi [187.93]

设备 2) 密度 [1.0] densityDpi [160] widthPixels[600] heightPixels [1024] xdpi [160.421] ydpi [159.568]

我将 value 文件夹中的整数值用于不同的屏幕,例如:170 200

我将文件夹名称命名为: value-sw600dp-mdpi && value-sw600dp 问题是两个设备的值都是从 value-sw600dp-mdpi 文件夹中选取的。

请帮助我区分这些目标的文件夹名称。

提前致谢!

4

1 回答 1

0

问题在于这两个设备的值都是从 value-sw600dp-mdpi 文件夹中选取的。

这就是应该发生的事情。

我将文件夹名称命名为:value-sw600dp-mdpi && value-sw600dp

res/values-sw600dp/永远不会被使用。添加密度限定符后,Android 将选择使用具有密度限定符(被认为与设备的实际密度最接近)的密度限定符,排除缺少密度限定符的其他限定符。

请帮助我区分这些目标的文件夹名称

理想情况下,这些目标没有区别,至少在密度方面是这样。-tvdpi(您的第一台设备,带有 213 密度桶)应该没有什么特别之处。我认为您尝试做的事情是一种代码气味,这表明您正在尝试使用大小和密度桶来实现某种它们并非旨在支持的“像素完美”度量。

话虽如此,并假设您需要该-sw600dp零件来做其他事情,res/values-sw600dp-mdpi/并且res/values-sw600dp-tvdpi/会区分它们。

于 2013-11-08T14:32:14.987 回答