TextView不会出现在listview之后

时间:2012-02-16 07:25:00

标签: android listview adapter

我想在我的XML中的listview之后显示TextView我正在使用不同的XML来填充元素视图的元素。我在列表视图之后(列表视图下方)添加了另一个textview但我看不到它......当我尝试将listview放置为自己的布局时,我得到了一个nullpointer ...任何想法?

XML

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
  <TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Large Text"
    android:textAppearance="?android:attr/textAppearanceLarge" />
<ListView
     android:id="@+id/listView1"
     android:layout_height="fill_parent"
     android:layout_width="fill_parent">

</ListView>
    <TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Large Text"
     />

4 个答案:

答案 0 :(得分:2)

我认为你应该使用RelativeLayout而不是LinearLayout,使用带有填充父高度的文本视图上方的listView,以及使用wrap_content对齐父对象底部的文本视图。

XML

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
  <TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Large Text"
    android:textAppearance="?android:attr/textAppearanceLarge" />
<ListView
     android:id="@+id/listView1"
     android:layout_above="@+id/textView2"
     android:layout_below="@+id/textView1"
     android:layout_height="fill_parent"
     android:layout_width="fill_parent">

</ListView>
    <TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Large Text"
    android:layout_alignParentBottom="true"
     />

</RelativeLayout>

答案 1 :(得分:1)

因为您已使用 fill_parent 声明高度宽度

只需声明android:width="fill_parent"android:height="wrap_content"即可。

进行此更改后,TextView将在那里。

答案 2 :(得分:1)

作为RelativeLayout解决方案的替代方案(并由Mohamed建议):

....
<ListView
    android:id="@+id/listView1"
    android:layout_height="0dp"
    android:layout_width="fill_parent"
    android:layout_weight="1" />
....

答案 3 :(得分:0)

使用相对布局最好是jitendra建议的。 或者,我自己检查了布局,当我将权重分配给TextView

时,第二个ListView字段出现了