【问题标题】:Which image size should be placed in the neutral drawable folder?应该将哪个图像尺寸放在中性可绘制文件夹中?
【发布时间】:2014-08-03 15:32:41
【问题描述】:

中性可绘制文件夹中应放置哪种尺寸的图像?

我有一个 5 个不同 版本的图标文件:

  • 24x24 = ldpi
  • 32x32 = mdpi
  • 48x48 = hdpi
  • 64x64 = xhdpi
  • 96x96 = xxhdpi

另一方面,我有 6 个不同的文件夹:

  • /可绘制
  • /drawable-ldpi
  • /drawable-mdpi
  • /drawable-hdpi
  • /drawable-xhdpi
  • /drawable-xxhdpi

5 个文件和 6 个文件夹意味着要么一个文件夹必须保持空白(哪个?),要么一个文件必须使用两次?

docs 是这么说的:

如果没有匹配的资源可用,系统使用默认的 资源并根据需要向上或向下扩展以匹配当前 屏幕尺寸和密度

“默认”资源是那些没有标记的资源 配置限定符。例如drawable/中的资源是 默认的可绘制资源。系统假定默认 资源是针对基线屏幕尺寸和密度而设计的,这 是正常的屏幕尺寸和中等密度。如此一来,系统 为高密度屏幕向上和向下缩放默认密度资源 适用于低密度屏幕。

但是,当系统在寻找特定密度的资源时 并且在密度特定目录中找不到它,它不会 始终使用默认资源。系统可以改为使用以下之一 其他密度特定的资源,以便提供更好的 缩放时的结果。例如,在寻找低密度 资源并且它不可用,系统更喜欢按比例缩小 高密度版本的资源,因为系统可以轻松 将高密度资源缩小到低密度 0.5 倍, 与按比例缩放中等密度资源相比,工件更少 0.75 倍。

好的,mdpi 版本应该放在drawable-mdpi 中,ldpi 放在drawable-ldpi 中等等是没有问题的。但是哪个版本进入中性文件夹?

我应该把 xxhdpi 文件放在那里(如果没有找到匹配项则按比例缩小)? -xxhdpi 文件夹比呢?保持空白还是将文件也放在那里?

【问题讨论】:

  • 在这里查看我的回答:stackoverflow.com/questions/19875158/…
  • @Haresh 谢谢,但链接的答案只是不同元素(背景、列表等)的不同大小的列表。这如何回答将哪个大小放在哪个文件夹中的问题?
  • 你可以放置XML-drawables,它与屏幕大小无关。
  • 在你的情况下“/drawable”这个文件夹保持为空。
  • 嗯,如果“/drawable”为空,系统怎么知道哪个文件是默认资源?正如文档所说,系统假设“/drawable”中的文件是“为基线屏幕尺寸和密度设计的”。把mdpi文件放在这里,-mdpi文件夹留空不是更好吗?

标签: android android-layout user-interface drawable


【解决方案1】:

默认的/drawable 文件夹需要mdpi images。并且主要用于两种情况:

  1. 拥有不依赖于密度的图像。 例如: 选择器,它再次间接链接到来自密度命名文件夹的图像。

  2. 将所有图像仅包含在此文件夹中并忽略所有其他可绘制文件夹。在这种情况下,图像将根据 屏幕密度。

对于您的情况:

默认/drawable中只能保留xml文件,如选择器 文件夹和各自文件夹中的其他图像

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-29
    • 2021-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多