0

我是android的初学者。

我尝试将标题添加到 ListView,但视图是隐藏的。

标题视图 - test.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
             android:layout_width="match_parent"
             android:layout_height="match_parent">

    <TextView android:layout_height="wrap_content"
              android:padding="50dp"
              android:layout_width="wrap_content"
              android:text="afassa"/>


    <View android:layout_height="match_parent"
          android:layout_width="2dp"
          android:id="@+id/line"
          android:layout_marginLeft="20dp"
          android:background="#ffffff"/>
</RelativeLayout>

主要的.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:id="@+id/ll"
        >
    <ListView android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:id="@+id/lv"/>
</FrameLayout>

添加标题

        ListView lv = (ListView) findViewById(R.id.lv);
        View v = View.inflate(this,R.layout.test,null);
        lv.addHeaderView(v);
        lv.setAdapter(aa);

但是用“@+id/line”查看隐藏在标题中为什么?

4

4 回答 4

0

您需要格式化标题视图 -test.xml

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

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="afassa" />

    <View
        android:id="@+id/line"
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:background="#ffffff" />

</LinearLayout>
于 2013-09-05T08:33:22.737 回答
0

尝试这个

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
             android:layout_width="match_parent"
             android:layout_height="match_parent">

    <TextView android:layout_height="wrap_content"
             android:layout_width="wrap_content"
              android:text="afassa"
              android:padding="50dp"
              android:id="@+id/text4"/>


    <View android:layout_height="2dp"
          android:layout_width="match_parent"
          android:id="@+id/line"
        android:layout_below="@+id/text4"
          android:background="@android:color/white"/>
</RelativeLayout>
于 2013-09-05T08:01:53.780 回答
0

这可能是因为您在 test.xml 的 TextView 中进行了 50dp 填充。你也没有说视图在相对布局中的位置,所以这条线是在文本视图的顶部绘制的。您设置的颜色也为白色,线条宽度为 2dp。您的 test.xl 应如下所示:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="match_parent"
         android:layout_height="match_parent">

<TextView android:layout_height="wrap_content"
          android:layout_width="wrap_content"
          android:text="afassa"
          android:id="@+id/head"/>


<View android:layout_height="2dp"
      android:layout_width="match_parent"
      android:id="@+id/line"
      android:background="#000000"
      android:layout_below="@id/head"/></RelativeLayout>

希望它现在有效。

于 2013-09-05T07:42:57.483 回答
0

可以直接把TextView放在ListView上面,不用加header,好像是header

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/ll" >

<TextView android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:text="header"
    android:padding="50dp"
    android:id="@+id/text4"/>

    <View android:layout_height="2dp"
        android:layout_width="match_parent"
        android:id="@+id/line"
        android:layout_below="@+id/text4"
        android:background="@android:color/white"/>

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

</FrameLayout>
于 2013-09-05T08:05:47.117 回答