选择器中的9-Patch显示黑点

时间:2012-09-12 20:56:25

标签: android android-xml nine-patch android-selector

我希望在按下时更改布局的背景。布局并不总是相同的形状,所以我创建了一个9补丁图像,将图像保持居中。我的图片看起来像这样:

enter image description here

然后我的选择器xml看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
 <item 
     android:state_pressed="true" 
     android:drawable="@drawable/my_selector" 
     />
 <item>
     <shape android:shape="rectangle">
         <solid android:color="#00ffffff" />
     </shape>
 </item>
</selector>

当我有这个代码并且我的图像不是9补丁时,它会拉伸填充。即使我将图像更改为9补丁,它仍然将图像视为普通的.png文件。甚至在角落里都有黑点和一切。

enter image description here

我想知道为什么图像的9-patch-ness没有得到尊重,它只是被视为一个普通的.png文件。

1 个答案:

答案 0 :(得分:4)

我认为问题在于您在图像的底部和右侧部分使用了两个点。我不确定他们的系统知道如何处理这两个维度上的不相交区域。实质上,你是说这个图像的“内容”部分由四个像素区域组成,这是右边界和底边界上四个点的交点。

如果你把它拿出来,我认为它应该对你有更大的预测。