我有以下可绘制文件夹
/drawable/
/drawable-hdpi/
/drawable-ldpi/
/drawable-mdpi/
/drawable-xhdpi/
如果我有图像资源,是否需要创建5(或4?)种不同版本的文件?假设我只制作了两个版本并将它们放在各自的文件夹中:
/drawable/
/drawable-hdpi/image.png
/drawable-ldpi/
/drawable-mdpi/image.png
/drawable-xhdpi/
当LDPI或XHDPI设备上的某人访问需要显示image.png
的活动时会发生什么?它只是没有显示出来吗?应用程序崩溃了吗?或Android是否遵循资源级联系统,显示最接近当前屏幕密度的版本?
此外,在这种情况下,image.png
文件夹中没有/drawable/
。这不好吗?每个资源是否(至少)都有/drawable/
文件夹中的版本?
另外,如果您指定了所有4个屏幕密度可绘制文件夹(xhdpi,hdpi,mdpi,ldpi),那么普通/drawable/
文件夹的重点是什么?什么时候会被使用?
答案 0 :(得分:4)
如果我有图像资源,是否需要创建5(或4?)个不同的图像资源 该文件的解析版本?
不,你没必要
当LDPI或XHDPI设备上的某人访问活动时会发生什么 需要显示image.png?它只是没有显示出来吗?是吗? 应用崩溃?或者Android是否遵循资源级联系统,显示 最接近当前屏幕密度的版本?
Android为其资源使用了一个很好的级联系统。 This页面解释了一下。 如果LDPI资源不可用,Afaik LDPI设备将使用MDPI资源,XHDPI使用HDPI资源。 (我可能有点偏离,我不记得确切的规则)你的应用程序不会崩溃。
如果您的分辨率资源比屏幕更高,则您的应用会崩溃。
此外,在这种情况下,/ drawable /文件夹中没有image.png。 这不好吗?每个资源是否应该(至少)有一个版本 在/ drawable /文件夹中?
不,没必要。
另外,如果您指定了所有4个屏幕密度可绘制文件夹 (xhdpi,hdpi,mdpi,ldpi),那么正常的意义何在 / drawable /文件夹?什么时候会被使用?
drawable文件夹适用于不需要缩放的图像,以及形状可绘制资源XML文件等。