É possível usar várias 9 imagens de correção dentro do LayerDrawable?

11

Eu quero usar dois nove patches dentro do LayerDrawable

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

E parece que apenas a primeira camada é esticada enquanto a segunda permanece como está.

Ambas as imagens são do mesmo tamanho que o .png e têm áreas alongáveis e elásticas iguais.

A pergunta é: Temos permissão para usar vários 9-patches (em uma lista de camadas) ou apenas um é permitido?

Obrigado.

    
por woodshy 21.05.2011 в 11:34
fonte

2 respostas

3

Agora enfrentei o mesmo problema. Tente isto:

<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>
    
por pleerock 29.10.2011 / 16:44
fonte
2

O seguinte faz os 9-patches se comportarem como você esperaria (testado no Android 2.2). Ambos os 9-patches são expandidos para preencher toda a área desenhável.

<?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>
    
por ChrisJD 25.04.2012 / 01:42
fonte