我有一个列表视图,列表视图中的各个项目从自定义布局中膨胀。我没有任何问题。我的问题是当我为项目添加背景时,它变得非常奇怪,它就像重新调整大小并且看起来很难看:
我为项目的高度设置了不同的值,如wrap_content,就像px中实际图像的确切高度,我在dip中尝试了值,但没有任何帮助。原始图像没关系,它看起来就像它应该但是当我把它作为项目的背景时它看起来很难看。这不是我第一次遇到这样的事情。使用wrap_content的somethimes有帮助,但并非总是如此。我不明白问题的背景为什么会发生这种情况?
为什么有时当我把一些图像作为背景甚至有一些渐变等等时,它的工作原理非常完美,为什么有时却没有呢?
我有经验,我有背景的线性布局,当布局的大小是wrap_content时,说77dip看起来非常难看(中间有划痕),当我把78或76dip高度背景看起来非常好再次在73dip显示中间件的划痕。我从来不理解这种奇怪的行为,有人可以澄清一下,做这样的事情的最佳做法是什么。
我阅读了多个屏幕支持,但我从来没有遇到过这种问题的解决方案,我从来没有读过其他人经历过这样的事情。
答案 0 :(得分:0)
使用9-patch tool创建可扩展的9-patch图像。使用此功能创建图像后,它将支持所有屏幕分辨率,并且在每种分辨率下看起来大致相同。
有关stretchable patches inside the 9-patch image的更多信息。
很好的教程,包含很好的例子:http://android10.org/index.php/articlesother/279-draw-9-patch-tutorial
答案 1 :(得分:0)
我认为你正在进入乐队/抖动问题。
问题的根源在于屏幕无法与您想要的颜色匹配,并将其“舍入”到最接近的可能值。这可能会在渐变色(如渐变色)的图像中产生不良效果。
查看此链接: http://www.curious-creature.org/2010/12/08/bitmap-quality-banding-and-dithering/
启用抖动可以帮助你。