9patch边界问题

时间:2010-03-21 05:55:52

标签: android

制作带有单像素边框的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。

很难让用户界面查看这些问题的确切方式。必须有一种方法让它看起来像你认为的那样。

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" />

确保您有正确密度的正确绘图

相关问题