android中的不同值文件夹

android中的不同值文件夹,android,resources,dimensions,Android,Resources,Dimensions,我正在我的应用程序中创建不同的值文件夹(值、值ldpi、值mdpi、值hdpi、值xhdpi、值nodpi、值w360dp-mdpi)。但有些设备属于同一类别。但是屏幕大小不同。但我在这里看到@PankajSharma提供的答案,建议创建如下文件夹- res/values/dimens.xml res/values-small/dimens.xml res/values-normal/dimens.xml res/values-xlarge/dimens.xml 我想知

我正在我的应用程序中创建不同的
文件夹(值、值ldpi、值mdpi、值hdpi、值xhdpi、值nodpi、值w360dp-mdpi)。但有些设备属于同一类别。但是屏幕大小不同。但我在这里看到@PankajSharma提供的答案,建议创建如下文件夹-

res/values/dimens.xml    
res/values-small/dimens.xml    
res/values-normal/dimens.xml    
res/values-xlarge/dimens.xml

我想知道我的方式和另一种方式有什么不同?我认为@PankajSharma提供的答案很简单。我还想知道哪种方法更好?

您使用的方法是一种有效的方法,但有点过时。从
蜂巢
,有一个解决所有这些问题的方法。您的资源文件夹现在应如下所示:

请参考我发布的链接,熟悉
最小宽度
概念

希望这有帮助:)

编辑:添加到这篇文章中,尝试在
dimens.xml
中建立某种标准化,如下所示:


这样做可以更容易地维护代码,还可以减少
dimen
文件夹的数量。通常情况下,没有
值hdpi
值xhdpi
等。像
值-sw480dp-xhdpi
这样的文件可能有更多的值需要调整,但所有这些都是上下文的。

在布局文件夹中为默认屏幕4.7英寸(hdpi)创建一个布局,并在值文件夹中创建尺寸。这是你的超集

现在,假设您想要7英寸设备的布局。创建纵向7英寸的values-sw600dp文件夹

现在让我们假设您希望10英寸设备的布局创建值-dw720dp文件夹

注意:-对于景观,只需在文件夹名称前添加“-land”

现在让我们假设您有了新的设备,如Xperia SP(4.7'和XHDPI)和Nexus 5(5英寸和XXHDPI)

对于这些,您可以在xhdpi和xxhdpi文件夹中创建值,并类似地为横向方向添加-land

我希望您了解如何创建文件夹

现在,您的超集已在“值”文件夹中定义。大多数维度将仅从此处使用。现在,请在其他设备中运行您的应用程序。无论发生什么不匹配,只需将特定维度添加到各自的“值”文件夹中即可

要检查使用的布局、图像来自哪个文件夹,请使用我的技巧

创建五个相同的字符串并将所有值放入其中,如下所示:- 默认屏幕 屏幕4.7 XHDPI屏幕 MDPI屏幕

创建五个可绘制文件夹,其中大部分已经存在:-可绘制hdpi、可绘制mdpi、可绘制xhdpi、可绘制xxhdpi、可绘制xxxhdpi 将下面的截图以相同的名称放在各自的文件夹中

这就是我的res文件夹的外观,我支持4.7屏幕及以上的所有设备:-


我想你应该看看那里,你会发现为什么会是这样。你可以在这里看到一个例子,我以前看到过这些链接,但不清楚。这个有帮助吗?但我的问题是关于值文件夹,而不是布局文件夹。答案是一样的,小和dpi之间的差异很小,与屏幕大小有关,而不是与屏幕密度有关。哟你可以有一个高密度的小屏幕。像值小的hdpi。这就是小屏幕和ldpi之间的区别。想象一下,一个屏幕不好的表格,比如真正的低分辨率文件夹是值xlarge ldpi,但你可以只使用值ldpi,它会工作。希望我已经停止了。sw320dp意味着最小宽度320dp?为什么我们需要附加-hdpi-xhdpi用于相同的sw480dp for ex?因为这些设备被进一步分类为此类测量。@user2247689 Ok。如果您想支持所有现有设备,那么将有大量文件夹:(做好设计将减少插入不同dimen文件中的值的数量,并将其与AutoFitTextView库相结合,将使不同的dimen文件仅包含填充、空格、半径等内容。您总是在问题之间复制并粘贴自己的答案吗?使用指向您以前答案的链接进行评论如何不要重复和扩展它(一点)。但最好的部分是:你在这里解决了一个问题,而不是在以前的答案上……太好了!“在布局文件夹中为默认屏幕创建一个单独的布局,在值文件夹中为默认屏幕创建一个4.7英寸(hdpi)的布局。”这是错误的。屏幕大小与dpi没有直接关系。不要使用eclipse