9-patch - 1像素边框模糊了

6
我正在测试HTC Desire这款高密度像素设备。当您查看该图像时,问题就很明显: 9-patch - 1px border is blurred 这是我用标准的9-patch工具制作的图像(放大后): 9-patch - 1px border is blurred 左边的图像是我的Photoshop文件,右边的是设备截图。如您所见,两者存在巨大的区别。假设阴影不是那么重要,但模糊的边框看起来很糟糕。
我的9-patch png文件错了吗?我该怎么办才能实现漂亮而清晰的1像素实线边框呢?

1
当您使用9路径工具时,必须进行一些操作。您是否在不同的可绘制文件夹中为每个PNG使用9路径工具? - goodm
你的9-patch文件名是否正确命名为filename.9.png? - ligi
1
在draw9patch中,将您的图像四周都用点标记出来,而不是画线,这样就可以正常工作了。 - Padma Kumar
@Padma Kumar。已经尝试过,没有效果,但感谢您的贡献。 - Michał Klimczak
2
如果您只需要一份副本,请将其放入drawable-nodpi文件夹中。 - HandlerExploit
显示剩余5条评论
2个回答

8

对于不同的drawable文件夹中的每个png,您应该使用9-path工具。有时问题在于Android尝试转换png并模糊黑色线条,这会导致后续显示出现问题。


5
为解决这个问题,只需将九宫格图像放入drawable-no-dpi文件夹中。这可以让所有密度都使用同一张图片,而且安卓不会改动这张图片。
这是我在项目中经常采用的方法,除非我真的想为密度之间创建差异。在那种情况下,我会为每个密度创建一个九宫格图像。
另一种解决方案:
把顶部和左侧标记缩小1个像素。这样可以确保可缩放部分不会重叠在灰色边框上。

是的,如果您不将每个可绘制对象放入不同的dpi中(正如您在这些旧评论中所看到的),那么这就是解决方案。 - Michał Klimczak

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接