如何将列表视图列匹配到标题?

时间:2016-01-19 16:28:11

标签: android layout

我正在尝试匹配列标题的宽度和列表视图的单元格。 我读到将两者的宽度设置为0dp应该可以工作,但在我的情况下不是这样。

片段(Tab)具有此布局。

 <LinearLayout android:id="@+id/main"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent">
    <!-- Header -->

    <LinearLayout
        android:id="@+id/header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:weightSum="1">

        <TextView android:id="@+id/item1"
            android:layout_height="fill_parent"
            android:layout_width="wrap_content"
            android:text="Finish Seq"
            android:width="0dp"
            android:height="30dip"
            android:layout_weight="0.25" />
        <TextView android:id="@+id/item2"
            android:layout_height="fill_parent"
            android:layout_width="wrap_content"
            android:text="Start Num"
            android:width="0dp"
            android:height="30dip"
            android:layout_weight="0.25" />
        <TextView android:id="@+id/item3"
            android:layout_height="fill_parent"
            android:layout_width="wrap_content"
            android:text="Clock Time"
            android:width="0dp"
            android:height="30dip"
            android:layout_weight="0.25"  />
        <TextView android:id="@+id/item4"
            android:layout_height="fill_parent"
            android:layout_width="wrap_content"
            android:text="Actual Time"
            android:width="0dp"
            android:height="30dip"
            android:layout_weight="0.25" />
    </LinearLayout>

    <!-- List Divider -->
    <View android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="?android:attr/listDivider" />

    <!-- ListView (grid_items) -->
    <LinearLayout android:id="@+id/layout"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent">
        <ListView android:id="@+id/listview"
            android:layout_height="fill_parent"
            android:layout_width="fill_parent">
        </ListView>
    </LinearLayout>
</LinearLayout>

它的android:宽度为0dp,权重为0.25,四者均匀分布。

列表视图的网格布局如下。 (我尝试过其他组合)。在名为grid_item_summary.xml

的文件中
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView android:id="@+id/item1"
        android:text="row_id"
        android:layout_height="fill_parent"
        android:layout_width="wrap_content"
        android:width="0dp"
        android:textSize="18sp"
        android:layout_weight="0.25" />
    <TextView android:id="@+id/item2"
        android:text="col_1"
        android:layout_height="fill_parent"
        android:layout_width="wrap_content"
        android:width="0dp"
        android:textSize="18sp"
        android:layout_weight="0.25" />
    <TextView android:id="@+id/item3"
        android:text="col_2"
        android:layout_height="fill_parent"
        android:layout_width="wrap_content"
        android:width="0dp"
        android:textSize="18sp"
        android:layout_weight="0.25" />
    <TextView android:id="@+id/item4"
        android:text="col_3"
        android:layout_height="fill_parent"
        android:layout_width="wrap_content"
        android:width="0dp"
        android:textSize="18sp"
        android:layout_weight="0.25" />
</LinearLayout>

我知道列将保留什么(一位或两位数字和时间hh:mm:ss)所以如果我相应地调整列(标题和网格)的大小,它就可以工作。但是根据屏幕尺寸的不同,这可能会留下空间。 当我有绝对宽度时,填充网格的代码(SimpleAdapter等)可以正常工作。 0dp没什么。启用show layout bounds显示没有可见字段。

Screen Capture

在网格布局中为TextViews尝试过android:layout_height =“wrap_content”。

1 个答案:

答案 0 :(得分:1)

在grid_item_summary.xml中 尝试在下面进行更改,

机器人:layout_width = “0dp” 而不是 机器人:layout_width = “WRAP_CONTENT”

希望这可以解决您的问题