2012-03-27 81 views
0

我试图添加一个RelativeLayout,它包含2个TextView,在ListView上方作为标题,但遇到了麻烦。我到目前为止的代码显示ListView控件,页脚,但没有头:在ListView上添加RelativeLayout

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

    <!-- Header --> 
    <RelativeLayout 
     android:orientation="horizontal" 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     > 
     <TextView 
      android:id="@+id/headerIcon" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
     />   
     <TextView 
      android:id="@+id/headerText" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:background="#919191" 
      /> 
      </RelativeLayout> 
    <!-- Header --> 

    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:padding="0dp"  
     >   
      <ListView 
       android:id="@android:id/list" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
      /> 

      <TextView android:id="@android:id/empty" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:text="No items" 
       android:padding="5dp" 
       /> 
    </LinearLayout> 

    <!-- Footer --> 
    <RelativeLayout 
     android:orientation="horizontal" 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     > 
     <TextView 
      android:id="@+id/footerIcon" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
     /> 
     <TextView 
      android:id="@+id/footerText" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="right" 
     /> 
    </RelativeLayout>   
    <!-- Footer --> 
    </RelativeLayout> 

UPDATE:

我这部分的工作。下面的代码确实显示了标题TextViews,但是当我滚动ListView时,标题布局闪烁并消失。为什么在Android中使用布局非常令人沮丧?

这是partically工作代码:

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

    <RelativeLayout 
      android:orientation="horizontal" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent" 
      > 

      <TextView 
       android:id="@+id/headerIcon" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_alignParentLeft="true" 
       android:background="#919191" 
      /> 

      <TextView 
       android:id="@+id/headerText" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentRight="true" 
       android:background="#919191" 
       /> 
    </RelativeLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     >   
     <ListView android:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="fill_parent" /> 

     <TextView android:id="@android:id/empty" 
      style="@style/BaseStyle" 
      android:text="No keywords entered" 
      android:padding="5dp" 
     /> 
    </LinearLayout> 

    <RelativeLayout 
      android:orientation="horizontal" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent" 
      > 
      <TextView 
       android:id="@+id/statusUpdated" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       style="@style/Status" 
       android:layout_alignParentLeft="true" 
       android:background="#919191" 
      /> 

      <TextView 
       android:id="@+id/statusItems" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       style="@style/Status" 
       android:layout_alignParentRight="true" 
       android:background="#919191" 
       /> 
    </RelativeLayout> 

</RelativeLayout> 

回答

0
<!-- Header --> 
    <RelativeLayout 
     android:orientation="horizontal" 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     android:layout_above="@+id/llayout" 
     > 
    <LinearLayout android:id="@+id/llayout"> 
     <ListView /> 
     <TextView /> 
    </LinearLayout > 

<!-- Footer--> 
    <RelativeLayout 
     android:orientation="horizontal" 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     android:layout_below=="@+id/llayout" 
     /> 
0

你的LinearLayout设置为FILL_PARENT,并可能导致您的问题