androiddrawable如何自动改变?

发布于 2024-12-28 15:43:24 字数 227 浏览 0 评论 0原文

我有一个 Android 应用程序,它使用很多图像。并且应用程序要在不同的分辨率上使用。我仅使用一组图像,并且图像保存在“drawable-mdpi”中。 所以“当我以高分辨率运行时,图像会变得模糊”。 所以这个问题的解决方案可能是在drawable-hdpi、ldpi等中保存不同分辨率的不同图像。

这样做就足够了还是我必须通过代码更改图像?或手机自动将完美图像调整到绘图中。

有人可以提供一个例子吗?

I have a android application, that uses many images. and application is to be used on different resolutions. I am using only one set of images and images are saved in "drawable-mdpi".
So "The images gets blur when I run it on a high resolution".
So probably the solution of this is to save different images of different resolution in drawable-hdpi,ldpi etc.

Is doing this is enough or do I have to change the images by code? or phone automatically adjust the perfact image into the drawables.

can anybody provide a example??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

沫离伤花 2025-01-04 15:43:24

如果将图像放入 ldpi,mdpi,hdpixhdpi 文件夹中,Android 会根据当前设备 dpi 选择图像。

如果您仅添加 mdpi 资源并将其加载到 hdpi 设备上,如果您在 HDPI 设备上打开图像,Android 会将图像放大 1.5 倍。 ldpi 设备,它们将以 0.75 系数缩小。
应用缩放后,图像在任何 dpi 下都具有(几乎)相同的物理尺寸。

如果在自动缩放后这些图像变得模糊(或缩小时细节松散),您应该为每个 dpi 添加不同的图像。如果您的简单图像在缩放后看起来效果很好,则只需将一张图像添加到任何 dpi 文件夹中。

编辑:
在 Android 上,没有根据屏幕分辨率自动选择图像的默认方法。正如文档所说:

添加对多屏幕的支持时,应用程序不能直接使用分辨率;应用程序应该只关心屏幕尺寸和密度,如广义尺寸和密度组所指定。

(请参阅支持多个屏幕)。

If you put the images in the ldpi,mdpi,hdpi or xhdpi folders Android chooses the images according to the current device dpi.

If you only add mdpi ressources and load them on a hdpi device Android will enlarge the images with a factor of 1.5 if you open them on a ldpi device they will be shrunk with a factor of 0.75.
The scaling is applied so that the images have (almost) the same physical size all displays with any dpi.

You should add different images for each dpi if those images will be blurry (or loose details when shrinked) after this autoscaling. If you have simple images that look well after scaling you only need to add one image to any dpi folder.

EDIT:
On Android there is no default way for automatically selecting images depending on the screen resolution. As the docs says:

When adding support for multiple screens, applications do not work directly with resolution; applications should be concerned only with screen size and density, as specified by the generalized size and density groups.

(see Supporting multiple screens).

回眸一笑 2025-01-04 15:43:24

这就够了。这就是在drawable目录中有不同文件夹的原因,但请注意,Android 1.5仅支持1个名为drawable的文件夹,没有子目录(但1.5上没有分辨率高于mdpi的手机)

This is enough. This is the reason for having different folders in the drawable directory, but note that Android 1.5 supports only 1 folder called drawable with no subdirectories (but there are no phones on 1.5 with resolution higher than mdpi)

失去的东西太少 2025-01-04 15:43:24

确保图像始终正确缩放的最佳方法之一是使用 9 Patch 可绘制对象。 Android 会根据屏幕尺寸自动缩放它们。它们最适合用于通常改变大小的东西(按钮、编辑文本、微调器等),但可以在正确的设置中正确应用。

使用 9 Patch 图像给我们带来的好处之一是节省空间;在我们的应用程序中内置三个不同版本的图像一段时间后可能会变得相当大,但有了 9 个补丁,您只需要一个副本。

请参阅此处了解更多详细信息:
http://developer.android.com/guide/developing/tools/draw9patch.html

One of the best ways of making sure your images are always properly scaled is to use 9 Patch drawables. Android will scale these according to the screen size automatically. They are best used for things that usually change size (Buttons, EditTexts, Spinners, etc), but can be applied properly in the right setting.

One advantage using 9 Patch images gives us is space-saving; having three different versions of images built into our applications can get quite large after awhile, but with 9 Patches you only need one copy.

See here for more details:
http://developer.android.com/guide/developing/tools/draw9patch.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文