我使用九个补丁图像作为选择器项目元素的drawable。 九个补丁图像在这里:
最终渲染的图像是这个(模拟器和设备截图,两个设备都有分辨率> mdpi):
正如您所看到的,它已在可伸展区域之外缩放(如9补丁文件中所定义),较深的绿色条纹应该更厚。 为什么这样,可以避免吗? draw9patch工具正确缩放此图像。是否与Android有关,试图在高分辨率设备上保留物理尺寸?
答案 0 :(得分:6)
您是否只提供图像的mdpi版本?
Android会按正确的像素密度缩放所有不可用的图像。这是在通过9patch缩放图像之前发生的。
这意味着您的图片会按比例放大以适合hdpi,然后缩放以适合内容。
要解决此问题,您必须提供图像的hdpi和xhdpi版本。 9patch不应该针对不同的像素密度和相当不同的内容/屏幕尺寸。
答案 1 :(得分:3)
我检查了你的9补丁:
为什么你把未使用的边界变成白色?它应该是透明的。 因此,它不被认为是9Patch: