Domanda

Sto cercando di disegnare una forma che ha tre forme rettangolari:
1. colore solido 2. pendenza 3. linea bianca
Come lo faccio? Quando provo questo, non funziona. La disposizione ha il colore genitore.

<shape 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle"
    android:height="60px"
    >
    <shape 
        android:shape="rectangle" 
        android:height="30px"
        >
        <solid 
            android:color="#ff297baf" 
            />
    </shape>
    <shape 
        android:shape="rectangle"
        android:height="30px"
        >
         <gradient
  android:type="linear"
  android:startColor="#ff297baf"
  android:endColor="#ff16c0e3"
  android:angle="270"/> 
    </shape>
    <shape
        android:shape="rectangle"
        android:height="3px"
        >
        <solid 
            android:color="#FFFFFFFF"
            />
    </shape>
</shape>

Sto cercando di fare un gradiente in 3 colori. Inizia con un #ff297baf colore solido, al 60% iniziare una pendenza da #ff297baf a #ff16c0e3 e aggiungere un po 'di riga alla fine.

È stato utile?

Soluzione

Se avete intenzione di considerare di usare più forme, si dovrebbe provare un LayerListDrawable. Qualcosa come questo funziona per me, ma solo per la vostra altezza esempio di 60px. Potrebbe essere necessario modificare in base alle proprie esigenze esattamente, ma questo dovrebbe ottenere un buon inizio:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape android:shape="rectangle">
        <gradient
            android:angle="270"
            android:endColor="#ff16c0e3"
            android:startColor="#ff297baf"
            android:type="linear" />
    </shape>
</item>
<item android:top="57px">
    <shape android:shape="rectangle">
        <solid android:color="#FFFFFFFF" />
        <size android:height="3px" />
    </shape>
</item>

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top