13

LayerDrawable 内で 2 つの 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>

そして、2番目のレイヤーはそのままで、1番目のレイヤーのみが引き伸ばされているようです。

どちらの画像も .png と同じサイズで、伸縮可能領域とパディング領域は同じです。

問題は、(1 つのレイヤー リストで) 複数の 9 パッチを使用できるか、または 1 つだけを使用できるかということです。

ありがとう。

4

2 に答える 2

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>
于 2011-10-29T14:44:39.847 に答える
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>
于 2012-04-24T23:42:15.513 に答える