哪个图像尺寸应放在中性可绘制文件夹中?

时间:2014-06-13 06:37:46

标签: android android-layout user-interface drawable

应将哪个尺寸的图像放在中性可绘制文件夹中?

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

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

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

  • /可绘
  • /抽拉-LDPI
  • /抽拉-MDPI
  • /抽拉-HDPI
  • /抽拉-xhdpi
  • /抽拉-xxhdpi

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

这就是docs所说的:

  

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

     

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

     

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

好吧,mdpi版本应该放在drawable-mdpi中,ldpi放在drawable-ldpi中等等是不可能的。但哪个版本转到中性文件夹?

我应该将xxhdpi文件放在那里(如果没有找到匹配则缩小)?那-xxhdpi文件夹怎么样?保持空白或将文件放在那里?

1 个答案:

答案 0 :(得分:5)

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

  
      
  1. 具有非密度相关图像。 例如:选择器,它再次间接链接到密度命名文件夹中的图像。

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

  4.   

根据您的情况:

  

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