2011-05-21 77 views
9

我想用内部LayerDrawable是否可以在LayerDrawable中使用几个9个补丁图像?

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
     <item android:id="@+id/solid"> 
      <nine-patch android:src="@drawable/button_header_solid" android:dither="true" /> 
     </item> 
     <item android:id="@+id/transparent"> 
      <nine-patch android:src="@drawable/button_header_transparent" android:dither="true" /> 
     </item> 
    </layer-list> 

二九补丁和似乎是,虽然第二个保持原样仅仅是第一层被拉伸。

这两个图像的大小都与.png相同,并且具有相同的可伸缩和填充区域。

现在的问题是:我们是否允许使用几个9补丁(在一个层列表中)或只允许使用一个?

谢谢。

回答

3

刚刚面临同样的问题。 试试这个:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
     <item android:id="@+id/solid"> 
      <nine-patch android:src="@drawable/button_header_solid" android:dither="true" /> 
     </item> 
     <item android:id="@+id/transparent"> 
      <clip> 
       <nine-patch android:src="@drawable/button_header_transparent" android:dither="true" /> 
      </clip> 
     </item> 
    </layer-list> 
+1

@karthi B,编辑不是为了给帖子添加评论。此外,StackOverflow并不意味着你的工作。如果您遇到问题,请提出具体问题并阅读常见问题解答。 – 2012-02-07 11:50:49

+0

哇!一点也不粗鲁! – afadfadf 2016-03-18 14:37:48

2

下使两者的9补丁表现为你所期望的(在Android 2.2测试)。两个9补丁都扩展到填充整个可绘制区域。

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:id="@+id/solid" 
     android:drawable="@drawable/button_header_solid"/> 
    <item android:id="@+id/transparent" 
     android:drawable="@drawable/button_header_transparent"/> 
</layer-list>