gpt4 book ai didi

android - 对于位图背景图像,我应该支持哪些屏幕尺寸/密度组合?

转载 作者:太空狗 更新时间:2023-10-29 15:27:54 24 4
gpt4 key购买 nike

我正在编写一个需要大量全屏位图背景的应用程序。基于我天真的阅读 Supporting Multiple Screens在 Android 文档中,为了涵盖我的所有基础,我可能应该有每个位图的 16 个版本:所有对 [ small, normal, large, xlarge ][ ldpi, mdpi, hdpi, xhdpi ]。这应该会减少 CPU 为缩放图像所做的工作,但会带来巨大的存储成本。

但是,由于两个原因,这似乎非常低效:

  1. 并非所有这些组合都在实践中被发现。
  2. 因为我只是为每个物理尺寸渲染矢量图(不考虑 DPI),像 large/mdpi 和 normal/hdpi(都是 ~ 480x854 像素)这样的对是重复文件。

那么,我是否应该只提供非常大的图像并让系统按比例缩小它们?硬着头皮提供大量重复图片?完全避免这个问题并用原始资源拼凑一些代码解决方案?还有其他想法吗?谢谢。

编辑:显然,您可以创建 XML 位图可绘制对象,为实际位图添加别名。这解决了第二个低效率论点。不过,我想知道其他人在实践中提供了哪些组合?

最佳答案

如果您希望这件艺术品的尺寸不变,那么您只能提供不同分辨率的图像,而不管它显示在什么屏幕 dpi 上。图标或按钮就是一个例子。

对于此处描述的背景图像,您不关心图像 dpi 是多少——您只关心 x * y 尺寸是多少。因此,您不必生成尺寸与 dpi 的叉积。您只需考虑 4 个屏幕尺寸类别。

在 4 个屏幕尺寸类别中,您只需存储较大尺寸之一(xlarge 或 large),然后让框架根据需要放大或缩小。您还可以通过编程方式进行缩放,以确保您不会更改背景的纵横比,也不会对其进行裁剪。

另见 Android game working on all screen sizes这有望吸引更好的答案。

关于android - 对于位图背景图像,我应该支持哪些屏幕尺寸/密度组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com