【问题标题】:Android devices with different height takes same layout folder不同高度的Android设备采用相同的布局文件夹
【发布时间】:2015-03-13 06:04:49
【问题描述】:

我有一个屏幕分辨率为 1280*720 像素的 Micromax AQ5000 和分辨率为 720 x 1280 像素的摩托罗拉 Moto G XT1033。我有一个名为 layout-sw360dp 的布局文件夹,它是为三星 s4、s3、Micromax 画布等设备设计的等等,但这个摩托罗拉设备也使用相同的布局,这会导致其中显示的图像失真。

如何为小型设备(Moto g)创建一个文件夹,我尝试了 layout-xhdpi,但它不起作用如何使用高度和宽度命名布局。

【问题讨论】:

  • 为更大屏幕宽度的手机创建另一个布局文件夹,例如 layout-sw600dp
  • @Prag'sshi 我的项目中有一个类似的文件夹,平板电脑(7 英寸)总是使用它

标签: android layout


【解决方案1】:

嗯,从某种意义上说,你是对的,android 应该根据不同的密度采用布局,但有些移动设备不属于特定的密度。因此android会从布局目录中获取默认布局。

为了支持多种屏幕分辨率,为不同的屏幕尺寸提供不同的布局,可以在 res 目录下像这样制作以下目录

layout-hdpi

layout-mdpi

layout-xhdpi

layout-xxhdpi

layout-w320dp-h408dp

layout-w480dp-h800dp

layout-w480dp-h854dp

layout-w720dp-h1280dp

layout-w1080dp-h1920dp

当您在所有这些目录中提供布局时,您还将为不同尺寸提供多屏幕支持 布局-w1440dp-h2560dp

改用“dip”,它们将帮助您调试布局,因为它们会尝试使多个屏幕分辨率保持一致的大小,

<ImageView
            android:id="@+id/avtar_animation_11"
            android:layout_width="45dip"
            android:layout_height="45dip"
            android:src="@drawable/avtar011"/>

虽然当您为尺寸提供“dp”时支持多屏幕,但实际上android希望您为不同的屏幕分辨率提供不同的值。让我们说下面是您的 imagview 尺寸在您的 android 项目的 res 文件夹中创建几个文件夹,如下所示

values-hdpi, values-mdpi, values-ldpi, values-xhdpi, values-xxhdpi

并在其中分别创建一个dimens.xml 文件并写入

<dimen name="image_view_width">28dp</dimen>
<dimen name="image_view_height">28dp</dimen>

现在我在这里提到了“dp”而不是 dip android 希望我跟踪不同屏幕分辨率的不同尺寸,所以我将更改 image_view_width 和 image_view_height 值位于 dimens.xml 所在的单独值文件夹中。确保您的 dp 值根据您希望视图适合的屏幕分辨率进行更改。

 <ImageView
        android:id="@+id/avtar_animation_11"
        android:layout_width="@dimen/image_view_width"
        android:layout_height="@dimen/image_view_height"
        android:src="@drawable/avtar011"/>

困难的部分现在已经结束,android 将根据您的应用程序正在运行的屏幕选择一个 dimens.xml 值,瞧,现在您的布局摇摆不定

【讨论】:

  • 非常感谢您的回复,因为我没有足够的声誉,所以无法投票
  • 没关系,我在开始android开发时遇到了这个问题:)
  • @KarthikaPB,非常感谢
  • 谢谢老兄 .. 它帮了很多忙 :)
  • 这将采用与您在 dimen.xml 中为每个屏幕尺寸指定的 image_view 相同的宽度和高度。据我所知,您必须相应地将 28dp 的值更改为 ldpi, hdpi and so on... 的每个文件夹。@PankajNimgade
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-01-14
  • 1970-01-01
  • 1970-01-01
  • 2014-02-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多