屏幕像素分辨率drawable选择器

时间:2013-04-23 14:01:17

标签: android resources drawable

虽然Android drawables支持多个屏幕是一个非常强大的工具,特别是它的drawable-sw ??? dp选择器,我缺少一个非常重要的功能,它支持像素选择器的屏幕尺寸(它可以实现为drawable -SW ???像素)。

想象一下,您有一个应用程序,您希望将某些图形元素缩放到屏幕大小的N%。如果你在dpi中使用基于屏幕大小的目录,你的图像在hdpi屏幕上会模糊,如果你使用基于dpi的目录,它们在大屏幕上会模糊。

当然你可以将那些drawables放到drawables-sw320dp-hdpi,drawables-sw320dp-mdpi等等,但这会产生各种图像版本(以及APK大小)和所需测试环境的爆炸。

目前我正在解决这个问题,方法是将这些drawable放在assets文件夹中并以编程方式选择它们,但这肯定不是一个理想的解决方案,从资产中加载drawables并不是随处可见。

请问你如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

在将图形放入项目之前缩放图形,然后将它们放到方便的文件夹中。例如假设你有一个bg.jpg,制作它的4个版本700x100,600x80,500x60,400x50并将它们绘制为drawable-xhdpi,drawable-hdpi,drawable-mdpi,drawable-ldpi。如果它不起作用,尝试使用矢量图形,它们的像素将在每次缩放时预先计算。最后,您可以使用Matrix类进行扩展,但它们很难学习和使用。