Android 无法显示ListView(多个数据列)

Android 无法显示ListView(多个数据列),android,Android,我问了一些关于stackoverflow的固定标题和多个数据列的问题,最后我想出了一些我认为有意义的东西,我觉得我离我的目标非常接近。现在的问题是数据没有显示出来。我做了日志记录。我和我发现我确实成功地读取了我的数据库,所以我想我的适配器有问题吗 活动: 公共类HistoryActivity扩展了活动 { private static final String TAG=“HistoryActivity”; ListView lv; SimpleDapter sd; RecordDAO=newRe

我问了一些关于stackoverflow的固定标题和多个数据列的问题,最后我想出了一些我认为有意义的东西,我觉得我离我的目标非常接近。现在的问题是数据没有显示出来。我做了日志记录。我和我发现我确实成功地读取了我的数据库,所以我想我的适配器有问题吗

活动:

公共类HistoryActivity扩展了活动 {

private static final String TAG=“HistoryActivity”;
ListView lv;
SimpleDapter sd;
RecordDAO=newRecordDao(HistoryActivity.this);
@凌驾
创建时受保护的void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
Log.i(标记“onCreate”);
setContentView(R.layout.historyactivityheader);
lv=(ListView)findViewById(R.id.list);
ArrayList记录=新的ArrayList();
Records=(ArrayList)dao.findAll();
ArrayList aList=新的ArrayList();
HashMap图;
对于(int x=Records.size()-1;x>=0;x--)
{
map=新的HashMap();
map.put(“ID”,String.valueOf(Records.get(x.getId()));
...
列表.添加(地图);
}
sd=新的SimpleAdapter(this,aList,R.layout.historyactivityrow,
新字符串[]
{“col1”、“col2”、“col3”,
“col4”},新int[]
{R.id.col1,R.id.col2,R.id.col3,
R.id.col4});
低压设置适配器(sd);
}
}

historyactivityheader.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true"
    android:orientation="vertical" >


    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
        android:orientation="horizontal"
        android:paddingBottom="6dip"
        android:paddingTop="4dip" >

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="col1"
            android:textColor="#FFFFFF"
            android:textSize="16dp" />

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="col2"
            android:textColor="#FFFFFF"
            android:textSize="16dp" />

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="col3"
            android:textColor="#FFFFFF"
            android:textSize="16dp" />

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="col4"
            android:textColor="#FFFFFF"
            android:textSize="16dp" />
    </LinearLayout>

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


</LinearLayout>

historyactivityrow.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal"
    android:paddingBottom="6dip"
    android:paddingTop="4dip" >

    <TextView
        android:id="@+id/col1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/col2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/col3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/col4"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

</LinearLayout>

解决方案:

答案是页眉的高度使用了填充父项,所以它覆盖了listview…这是一个愚蠢的错误。。。 因此,请更改以下内容: header.xml应位于relativelayout中,并将listview放置在headertextview下方,然后还设置listview的宽度以填充父项,最后,更改标头的高度以包裹内容

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal"
    android:paddingBottom="6dip"
    android:paddingTop="4dip" >

    <TextView
        android:id="@+id/col1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/col2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/col3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/col4"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textColor="#FFFFFF" />

</LinearLayout>