我读了很多关于支持Android中的多个屏幕问题,但我还没有解决过。如果我理解得很好,至少有两种方法可以在不同的屏幕上显示图像并使其看起来正常。首先,制作许多图像(xhdpi,hdpi,mdpi,ldpi)。二,是创建布局(大,中,小等)我的问题是:哪种方法更好?现在,我的问题。我采用了第一种方法,创建了不同大小的图像,并根据图像的大小复制到文件夹中。我使用DEVS BITMAP应用程序获取大小,我希望我的图像看起来像不同的屏幕。当我在7'屏幕上观看时,我得到了完美的视野,但是3'屏幕上的视图变得非常糟糕。我将此代码复制到我的Manifest:
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
我认为没有必要,但我想确保我做的一切都很好。谁能回答我的问题并解决我的问题?非常感谢你的帮助! ;)
答案 0 :(得分:1)
创建一个新项目。
有一个布局文件夹,values-sw600dp,values-dw720dp-land。在这两个文件夹中,都有一个dimens.xml文件。写在里面的是: -
<resources>
<!--
Customize dimensions originally defined in res/values/dimens.xml (such as
screen margins) for sw720dp devices (`e.g. 10" tablets)` in landscape here.
-->
<dimen name="activity_horizontal_margin">128dp</dimen>
这意味着sw-720 dp的文件夹适用于10英寸设备,类似600dp适用于7英寸设备,默认布局文件夹适用于3到5英寸设备。
layout-sw600dp - &gt;此文件夹将在7英寸设备的PORTRAIL Orientation中具有xml
layout-sw600dp-land - &gt;对于7英寸设备,此文件夹将在LANDSCAPE Orientation中具有xml。旋转设备时,将从此文件夹中显示视图
根据设备的dpi / resoulution,您可以创建无限数量的布局文件夹。
同样,有些文件夹名为drawable - &gt; hdpi ldpi mdpi xhdpi xxhdpi。根据设备的分辨率,从各自的类别中选择图像。
xxhdpi将包含分辨率最高的图片。因此,请尝试下载大分辨率图像并缩小尺寸并将其放入其他文件夹中。
现在如何知道哪个设备会拍哪张图片? 见下图: -
请参阅下拉列表。它包含一系列具有分辨率和图像类型的设备-hdpi ldpi mdpi xhdpi xxhdpi。此外,您可以 GOOGLE 查看设备及其分辨率和dpi。
因此无论您为设备制作什么应用程序,请选择该设备并查看其分辨率,看看它是hdpi还是ldpi等。相应地,放置图像和布局。
这是我的理解。我用这种理解创建了我的布局。我希望你有清晰的画面
答案 1 :(得分:0)
添加不同尺寸的图像 绘制,LDPI / 绘制,MDPI / 提拉 - 华电国际/ 绘制-xhdpi / 可绘制-xxhdpi /
假设您在布局文件夹中有Imageview
<ImageView
android:layout_width="@dimen/horizontal_len"
android:layout_height="@dimen/vertical_len" />
执行以下值
values / dimens.xml(普通手机版)
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="horizontal_len">16dp</dimen>
<dimen name="vertical_len">16dp</dimen>
values-large / dimens.xml(7英寸)
<dimen name="horizontal_len">20dp</dimen>
<dimen name="vertical_len">20dp</dimen>
值-XLARGE /梦诗。 xml(10英寸)
<dimen name="horizontal_len">22dp</dimen>
<dimen name="vertical_len">22dp</dimen>
所以你必须尝试这样。