什么是android studio中的dimens.xml(w820dp)。

时间:2016-07-28 11:44:48

标签: android android-studio dimensions

在android studio中创建新项目时,默认情况下在以下路径中创建了两个xml文件。

..res/values/dimens.xml
..res/values/dimens.xml(w820dp)

我们知道文件 dimens.xml ,我们可以在其中定义元素的维度,但是为什么默认情况下会创建第二个文件 dimens.xml(w820dp)

有人可以说明为什么需要它以及什么时候可以使用它。

4 个答案:

答案 0 :(得分:7)

您可以在Andorid Studio中为每个所需的屏幕大小定义多个文件夹。在您的情况下,android studio定义文件夹,您可以在其中定义用于缩放平板电脑或手机的尺寸(测量值)。 例如。它定义了两个文件夹,如:

values-large
values-xlarge

或在你的情况下

values-w820dp

现在在此文件夹中,定义了一个 dimen.xml 文件,您可以将测量值放在(单位dp)相应的屏幕尺寸中。 定义如下测量:

<dimen name="value1">17dp</dimen>

然后在布局xml中嵌入这些大小,如:

android:layout_height="@dimen/value1"

根据屏幕尺寸,系统将从此文件夹加载正确的测量值,例如如果您的屏幕尺寸,则只会加载文件夹 values-large 中定义的值。 有关更多信息,请查看https://developer.android.com/distribute/essentials/quality/tablets.html

EDIT1:所以基本上如果你看到文件 dimen.xml(w820dp),那里的值只会被使用,如果app在820dp及以上的显示器上执行,在这种情况下,这意味着平板电脑

答案 1 :(得分:1)

实际上,您的项目结构中根本没有名为..res/values/dimens.xml(w820dp)的文件(请自行检查)。你所拥有的是..res/values-w820dp/dimens.xml文件,但为了使编辑正确的文件更容易,Android工作室将(在Android视图中)显示它。框架将在显示宽度为820dp或更高的设备上使用此文件:

  

指定最小可用屏幕宽度,以dp为单位   应该使用资源 - 由值定义。这个配置   当方向在景观和景观之间变化时,价值将会改变   肖像以匹配当前的实际宽度。

另一方面,将加载“普通”dimens.xml。请参阅有关资源限定符的Providing Alternative Resources文档,以了解有关可能的选项和优势的更多信息。

答案 2 :(得分:0)

这些文件的主要用例是支持用户界面的各种屏幕分辨率

<强> dimens.xml

Android automatically take values from this file for device with dpi less than 820dp

<强> dimens.xml(w820dp)

Android automatically take values from this file for device with dpi greater than 820dp

如何使用

在这些具有相同名称的文件中声明维度( dimens.xml

<dimen name="button_width">200dp</dimen>
<dimen name="button_height">40dp</dimen> 

仅更改其值( dimens.xml(w820dp)

<dimen name="button_width">400dp</dimen>
<dimen name="button_height">80dp</dimen> 

w820dp

 for screens with more than 820dp of available width. This would include 7"
 and 10" devices in landscape (~960dp and ~1280dp respectively)

答案 3 :(得分:0)

w820dp限定符值,可为不同维度提供备用值。这用于正确本地化到设备类型。