2016-09-04 46 views
0

所以我想在我的textview標題下對齊我的列表視圖。然而,我改變佈局或重力或類似東西的所有變化現在似乎將列表視圖直接放在它們各自的標題下。 下面是它看起來像現在: enter image description here對齊在textview下的列表視圖

這裏是一個有頭

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <!--Header aligned to top --> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@+id/header" 
     android:gravity="center" 
     android:background="#FC9"> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/Drive_Number" 
      android:layout_margin="4dp" 
      android:textSize="18sp" 
      android:textColor="#000" 
      android:layout_weight="1" 
      android:gravity="center_horizontal"/> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/Drive_Distance" 
      android:layout_margin="4dp" 
      android:textSize="18sp" 
      android:textColor="#000" 
      android:layout_weight="1" 
      android:gravity="center_horizontal"/> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/Drive_Time" 
      android:layout_margin="4dp" 
      android:textSize="18sp" 
      android:textColor="#000" 
      android:layout_weight="1" 
      android:gravity="center_horizontal"/> 
    </LinearLayout> 
    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:scrollbars="vertical" 
     android:background="#005" 
     android:layout_below="@+id/header" 
     android:id="@+id/scrollableContents"> 

     <ListView 
      android:id="@+id/listView" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" /> 

    </RelativeLayout> 
</LinearLayout> 

在這裏,XML是具有列表視圖的XML:

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

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="3dp" 
     android:textSize="20sp" 
     android:textColor="#CCCCCC" 
     android:text="Medium Text" 
     android:id="@+id/Drive_Number_List" 
     android:layout_weight="1" 
     android:gravity="center_horizontal"/> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="3dp" 
     android:textSize="20sp" 
     android:textColor="#CCCCCC" 
     android:text="Medium Text" 
     android:id="@+id/Drive_Distance_List" 
     android:layout_weight="1" 
     android:gravity="center_horizontal"/> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="3dp" 
     android:textSize="20sp" 
     android:textColor="#CCCCCC" 
     android:text="Medium Text" 
     android:id="@+id/Drive_Time_List" 
     android:layout_weight="1" 
     android:gravity="center_horizontal"/> 
</LinearLayout> 

回答

2

看起來有兩種方法可以實現所需的「對齊」。

  1. 對準頭按在listview項目如上圖: 使用LinearLayout的頭。對於所有用戶分別使用android:layout_weight = 1android:layout_width="0dp",並且對最左邊的textview,gravity="right"設置gravity="left",對於最右邊的textviewgravity="center_horizontal",將中間一個分爲三個textviews(在頁眉中)。

  2. 請總屏幕寬度的自身的三分之一對齊的一切中心: 使用LinearLayout頁眉和列表視圖項。使用佈局權重和0dp寬度如上劃分。使用gravity="center_horizontal"所有項目

注意:使用「gravity」屬性,而不是「layout_gravity

+0

#2我只是補充說什麼,我已經有了?或者我擺脫了什麼,並加入了?因爲目前所有東西都被推到了左邊。 –

+0

我試着拿出'layout_alignParenTop'和其他類似於第一個listview項中的東西,它仍然一直推到左邊。 –

+0

對於#2,你應該用'LinearLayout'替換容器'RelativeLayout'爲頭文件和listview xml。 'layout_alignParentTop'對'LinearLayout'子視圖沒有意義。 – bitbybit

0

試試這個,你可以改變填充,如果你想

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent"> 

<!--Header aligned to top --> 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/header" 
    android:background="#FC9" 
    android:orientation="horizontal"> 

    <TextView 
     android:paddingLeft="10dp" 
     android:paddingStart="10dp" 
     android:layout_weight="1" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:id="@+id/Drive_Number" 
     android:layout_margin="4dp" 
     android:textSize="18sp" 
     android:textColor="#000"/> 
    <TextView 
     android:gravity="center" 
     android:layout_weight="1" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:id="@+id/Drive_Distance" 
     android:layout_toRightOf="@+id/Drive_Number" 
     android:layout_margin="4dp" 
     android:textSize="18sp" 
     android:textColor="#000"/> 
    <TextView 
     android:paddingRight="10dp" 
     android:paddingEnd="10dp" 
     android:gravity="right" 
     android:layout_weight="1" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:id="@+id/Drive_Time" 
     android:layout_toRightOf="@+id/Drive_Distance" 
     android:layout_margin="4dp" 
     android:textSize="18sp" 
     android:textColor="#000"/> 
</LinearLayout> 
<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:scrollbars="vertical" 
    android:background="#005" 
    android:layout_below="@+id/header" 
    android:id="@+id/scrollableContents"> 

    <ListView 
     android:id="@+id/listView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 

</RelativeLayout>