2013-10-22 10 views
8

Quindi sto provando a mettere un divisore tra le viste in un LinearLayout usando l'attributo XML android:divider. Quando utilizzo un LinearLayout verticale, non viene visualizzato alcun divisore. Quando uso un LinearLayout orizzontale, il divisore si presenta e funziona correttamente. Ecco l'drawable che sto utilizzando per il divisore (drawable/one.xml):Divisore per LinearLayout verticale?

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <size android:width="1dip" /> 
    <solid android:color="#FFFFFF" /> 
</shape> 

Ed ecco la mia LinearLayout:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:orientation="vertical" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:divider="@drawable/one" 
       android:dividerPadding="10dp" 
       android:showDividers="middle"> 
<TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="test1" 
      /> 

<TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="test2" 
      /> 

</LinearLayout> 

Non è possibile utilizzare l'attributo divisorio con un layout lineare verticale o mi sto perdendo qualcosa?

risposta

24

Per il layout verticale, nel drawable, penso che è necessario sostituire

<size android:width="1dip" /> 

con

<size android:height="1dip" /> 
+1

O meglio, è necessario disporre di due drawable, uno con la larghezza impostata 1dip e uno con l'altezza impostata su 1dip – scrayne

+1

Mi hai salvato dall'uccidermi;) – marioosh

+0

Dannazione, avrebbe dovuto essere ovvio. Grazie per questo. – LiveMynd