2013-10-07 37 views
1

所以我想創建我的擴展列表,它不會工作的子項列表內的線路,這裏是我的代碼列表(可擴展)項目內垂直線:創建於Android

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout 
    android:id="@+id/rows" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerVertical="true" 
    android:visibility="visible" 
    android:layout_toLeftOf="@id/checkBox_view" > 

    <LinearLayout 
     android:id="@+id/row1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/row1_column1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_gravity="left" 
      android:layout_weight="1" 
      android:gravity="left"/> 

     <TextView 
      android:id="@+id/row1_column2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:gravity="right"/> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/row2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/row1" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/row2_column1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_gravity="left" 
      android:layout_weight="1" 
      android:gravity="left"/> 

     <TextView 
      android:id="@+id/row2_column2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:gravity="right"/> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/row3" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/row2" > 

     <TextView 
      android:id="@+id/row3_column1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_gravity="left" 
      android:layout_weight="1" 
      android:gravity="left" 
      /> 

     <TextView 
      android:id="@+id/row3_column2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="right" 
      android:gravity="right" 
      /> 
    </LinearLayout> 
</RelativeLayout> 

<View 
    android:id="@+id/separator" 
    android:layout_width="1dp" 
    android:layout_height="match_parent" 
    android:background="@color/border_grey" 
    android:layout_toEndOf="@id/rows" 
    android:layout_alignParentBottom="true"/></RelativeLayout>          

它基本上是一個相對佈局,與含有一個TextView和複選框並含有每行中的所有文本框一個RelativeLayout的一個的LinearLayout:

/////////////////////////////||////////////////// 
// String 1_1 // String 1_2 ||    // 
/////////////////////////////||    // 
// String 2_1 // String 2_2 || TXT :CHECKBOX // 
/////////////////////////////||    // 
// String 3_1 // String 3_2 ||    // 
/////////////////////////////||////////////////// 

但是,應該繪製垂直的最後一個視圖不工作,我嘗試了很多使用linearlayouts的替代方法,但仍然無法工作。

回答

2

試試這個

編輯:添加分隔:)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:orientation="horizontal" 
android:paddingLeft="3dp" > 

<LinearLayout 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:orientation="vertical" 
    android:paddingLeft="3dp" > 

    <LinearLayout 
     android:id="@+id/row1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/row1_column1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" /> 

     <TextView 
      android:id="@+id/row1_column2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/row2" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/row2_column1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" /> 

     <TextView 
      android:id="@+id/row2_column2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/row3" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/row3_column1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" /> 

     <TextView 
      android:id="@+id/row3_column2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 
</LinearLayout> 

<View 
    android:id="@+id/separator" 
    android:layout_width="1dp" 
    android:layout_height="match_parent" 
    android:layout_alignParentBottom="true" 
    android:layout_toEndOf="@id/rows" 
    android:background="@color/border_grey" /> 

<LinearLayout 
    android:layout_width="0dp" 
    android:layout_height="match_parent" 
    android:layout_weight="1" 
    android:gravity="center" 
    android:orientation="vertical" 
    android:paddingLeft="3dp" > 

    <LinearLayout 
     android:id="@+id/checkBox_view" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:paddingLeft="3dp" > 

     <TextView 
      android:id="@+id/checkbox_text" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="cancelar?" /> 

     <CheckBox 
      android:id="@+id/checkBox_state" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@android:drawable/checkbox_off_background" 
      android:focusable="false" 
      android:focusableInTouchMode="false" /> 
    </LinearLayout> 
</LinearLayout> 

+0

Sry基因。忘了分隔符現在添加:) – JWqvist

+0

嗨,大家好!抱歉遲了迴應。現在去檢查。並讓我知道它是如何去的。 – Maxrunner

+0

分隔符保持在中間位置,但是如何將它移動到文本/複選框的旁邊? – Maxrunner

1

的問題是,分離器不具有實際的「區域」指定的畫,只是對準底部不會指定一個啓動和停止點,如果你有兩個元素說,下面和他們的它上面如你預期會畫畫,另一個選項是使用「根佈局」爲的LinearLayout方位水平,並設置你的第一行,然後使用該代碼的分隔符:

<View 
    android:layout_width="1dp" 
    android:layout_height="0dp" 
    android:layout_weight="1" 
    android:background="#FFFF"/> 

然後複選框。

這應該做的伎倆。

希望這會有所幫助。

商祺!