4

我搜索了有关可绘制文件夹的时间。但我想确保我得到的是正确的,所以我创建这个问题只是为了确认它。

问题是:

我在 drawable-hdpi 文件夹中有一个 .png (高清图像)(并且仅在此文件夹中)。我在 mdpi 设备上运行我的应用程序。会发生什么?从我在互联网上读到的。我认为: 1. Android 会看看drawable 文件夹。2. 因为这个文件夹里没有a.png,所以Android会查看others文件夹,最后会在hdpi文件夹中得到一个.png文件。3. Android 会将 a.png 图像缩小 1.5 倍以适应 mdpi 设备。4. 缩放后的a.png图片会显示在屏幕上。

如果我错了,请纠正我。谢谢你。

4

3 回答 3

1

你可以使用 xml 资源。将文件 a.xml 放在您的 hdpi 文件夹中,然后从那里引用您放在可绘制文件夹中的 a.png。

位图示例,还有其他方法(ninepatch、旋转、缩放、选择器...):

<?xml version="1.0" encoding="utf-8"?>
<bitmap
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/a"/>

这样,至少,您不必复制图像。

于 2013-08-21T11:36:18.443 回答
1

我为时已晚,但我想我有一个答案。@Paul 是的,你是对的。你可以在你的 xxhdpi 文件夹中放置一个高质量的图像,android 会自动为你缩小它(取决于屏幕尺寸图像可能不是最好的)。很简单。那为什么还要粘贴其他文件夹呢?有趣的是,我发现如果您在呈现图像时使用动画,它不会有平滑的过渡。这是将图像放置在所有文件夹中的一个原因。

于 2015-09-21T06:28:36.277 回答
0

你是对的。但有时它不会发生。一旦我将图像保存在可绘制的 mdpi 中,后来我发现我在 10 英寸选项卡上使用了该应用程序,图像变得模糊。所以最好将图像保存在从 hdpi 开始的所有文件夹中。我知道这没有任何意义,但我在另一个选项卡 7' 上尝试了我的应用程序,这里的图像不是模糊的,而是变短了。我尝试将图像保存在所有文件夹中,然后在我的两个设备上运行它会更好。我遇到了高清图像的问题,因为它没有显示在屏幕上。我的背景是纯白色的。

最好将图像保存在所有文件夹中。尽量保持在 hdpi 中,这样它的分辨率就不会在设备上受到影响。

于 2013-08-21T10:59:02.293 回答