不同高度的 Android 设备采用相同的布局文件夹

标签 android layout

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

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

最佳答案

从某种意义上说,你是对的,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 文件夹中制作几个文件夹,如下所示

enter image description here

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 值根据您希望 View 适合的屏幕分辨率而变化。

 <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 设备采用相同的布局文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29025843/

相关文章:

android - 如何去除按钮后面的边框?

java - 如何在 ListView 中使用 Android DataBinding 并仍然使用 ViewHolder 模式?

javascript - 像 Molio、Pilu 的 web-app-theme 或 Yui App Theme 这样的 CSS 布局主题?

android - 如何删除带有 actionbar、viewpager 和多个 fragment 的选项卡?

android - 从位图描述符获取位图

android - 了解OkHttp publicsuffixes.gz

html - 如何让表格扩展到整个页面

css - HTML5/CSS : update layout according to changing page size?

Android TextView 基线相关边距

css - Wordpress CSS - 两个布局问题