2013-03-02 5 views
8

Posso sapere come è possibile modificare il colore del divisore in LinearLayout?Modificare il colore del divisore in LinearLayout

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="48dp" 
    android:orientation="horizontal" 
    android:divider="?android:attr/dividerVertical" 
    android:dividerPadding="12dip" 
    android:showDividers="middle" 
    android:background="#ff2d2d2d" > 
... 
</LinearLayout> 

Ho bisogno di copiare manualmente immagine 9 patch da Android SDK nel mio progetto, e definire il mio attributo per riferirlo?

+0

Sì, è possibile creare la propria immagine (dividerVertical) e inserirla in un disegno e utilizzarla tramite android: divisore = "@ drawable/dividerVertical". Ho provato alla mia fine e il suo funzionamento –

risposta

22

Sembra attributo android:divider non accetta un valore di colore. Quindi, è necessario creare un drawable divisorio separata al fine di ottenere funziona:

divider.xml

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 

    <size android:width="1dip" /> 
    <solid android:color="#f00" /> 

</shape> 

layout.xml

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="48dp" 
    android:orientation="horizontal" 
    android:divider="@drawable/divider" 
    android:dividerPadding="12dip" 
    android:showDividers="middle" 
    android:background="#ff2d2d2d" > 

Inoltre, si ricorda che android:divider è disponibile soltanto in Android 3.0 o versione successiva e non funziona nelle precedenti versioni di Android.

+0

Si dovrebbe sbarazzarsi della risposta non valida. – lhunath

+0

@lhunath, modificato –

+0

come mai non riesco a vedere il divisore quando uso questo xml? ho anche provato ad usare una larghezza diversa per questo e mostrare i divisori in tutti i casi ... –

-2

Ecco come ho fatto

 <ImageView 
      android:id="@+id/imgVwmarkupborder" 
      android:layout_width="280dp" 
      android:layout_height="2dp" 
      android:src="@android:color/white" /> 
-3
<View 
    android:layout_width="fill_parent" 
    android:layout_height="1dp" 
    android:background="@android:color/white"/> 

Nel mio metodo che sto usare questo ..

+0

conosco tale metodo. Voglio solo usare l'androide: funzione divisore –