如何为相同尺寸类别的设备设置不同的布局?

时间:2013-07-14 13:11:02

标签: android

我有3台设备

1) galaxy nexus 720 * 1280 xhdpi,正常尺寸类别)

2) motorola 480 * 854 hdpi,正常尺码类别)

3) htc 320 * 480 mdpi,正常尺寸类别)

我的布局文件夹中有我的xmls。在我的xmls中,我需要修改我的文本视图的大小,Edittext(它会随着文本输入而扩展)。

因此,我在我的motorolo,htc设备上遇到问题。我无法准备不同的布局,因为这3个设备都在布局正常(布局)下。

我在矩形背景中有Textviews,文本增加rect框正在扩展。

是否有为每个设备准备不同布局的选项。

请建议

由于

1 个答案:

答案 0 :(得分:1)

您可以使用layout-mdpilayout-hdpilayout-xhdpi等布局文件夹来定位密度。你为什么想做这个?使用逢低的一切都会很好。

修改:根据您提供的评论提出的建议:

通过使用类似200dp的值,所有设备上的框都具有相同的大小。不是像素,而是屏幕上的实际大小。这就是dips(dp单位)的制作方法。

在不同的设备尺寸上,屏幕应该看起来有点相同。阅读http://developer.android.com/guide/practices/screens_support.html上的说明,尤其是名为“密度独立性”的部分。

阅读完之后,如果你仍然真的,我强烈建议你不这样做,希望他们在不同的屏幕尺寸上看起来不同。

  1. 在布局中,xml将宽度定义为android:layout_width="@dimen/the_width"

  2. 在文件夹值中,创建文件values.xml。在那里定义一个像<dimen name="the_width">200dp</dimen>这样的维度。 200dp是一个示例,将是默认值。

  3. 在values-hdpi,values-xhdpi和/或values-mdpi文件夹中覆盖此值,方法是创建相同的values.xml,但the_width的值不同。

  4. 这将使edittext在不同的屏幕尺寸上具有不同的大小。