制作带有单像素边框的9patch图像有诀窍吗?
我不是在谈论用于定义可伸缩和内容区域的单像素黑色边框。我在谈论图像本身。如果我创建一个围绕它有1像素边框的图像,那么android通常会选择其中一条边并将其拉伸到2(或者更多)像素,即使我特意将边缘拉出draw9patch中的可伸展区域效用
这是我的意思截图;在这个截图中,我在垂直LinearLayout中有两个具有相同背景图像的按钮。顶部按钮显然有一个较粗的边框,但它不应该。
http://www.vimtips.org/media/button_ss.png
以下是屏幕截图按钮(左侧)和实际9patch图像(右侧)的特写。
http://vimtips.org/media/images/buttoncmp.png
按钮不是我见过的唯一一个地方。如果我创建一个带有1像素边框的背景图像并将其用作ListView行的背景,有时边框看起来是2像素而不是1。
很难让用户界面查看这些问题的确切方式。必须有一种方法让它看起来像你认为的那样。
答案 0 :(得分:3)
尝试使用9补丁中的不同标记。防爆。就像他们在这个例子中使用的那样:http://developer.android.com/intl/de/guide/developing/tools/draw9patch.html
我自己也经历过这个问题,问题与清单文件中的largeScreen支持有关。而且我没有在drawable-hdpi文件夹中提供正确的图像等。导致设备缩放drawable-mdpi drawables。
你有多少个可绘制的文件夹?
你的清单中有这个吗? :
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:resizable="true"
android:anyDensity="true" />
确保您有正确密度的正确绘图