为页眉和页脚添加textview

时间:2013-05-13 20:25:47

标签: android xml layout gridview textview

我对LinearLayouts和GridView有一个很好的noob问题。 我想显示一个带有和标题的活动,一个滚动的GridView和一个页脚。 我搜索如何做这些东西,但我坚持让页脚出现。 我有这个xml用于活动布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MyActivity"
    android:orientation="vertical" >
    <TextView
        android:id="@+id/header_text"
        android:text="Header!"
        android:gravity="center"
        android:textSize="15dp"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        />
    <GridView
        android:id="@+id/my_grid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:gravity="center"
        android:horizontalSpacing="10dip"
        android:numColumns="2"
        android:stretchMode="columnWidth"
        android:verticalSpacing="5dip" >
    </GridView>
       <TextView
        android:id="@+id/footer_text"
        android:text="Footer!"
        android:textSize="15dp"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        />
</LinearLayout>

但是使用此布局只显示标题。哪里我错了? 提前谢谢。

2 个答案:

答案 0 :(得分:1)

您的问题是GridView的高度设置为wrap_content。这意味着如果您有更多内容,GridView将继续向下扩展,将您的页脚推离屏幕。相反,请将GridView的高度设置为0dp,然后将android:layout_weight设置为1

答案 1 :(得分:0)

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

<LinearLayout
    android:id="@+id/lll"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/header_text"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@color/black"
        android:gravity="center"
        android:text="Header!"
        android:textColor="@color/white"
        android:textSize="15dp" />
</LinearLayout>

<GridView
    android:id="@+id/my_grid"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/lll"
    android:gravity="center"
    android:horizontalSpacing="10dip"
    android:numColumns="2"
    android:stretchMode="columnWidth"
    android:verticalSpacing="5dip" >
</GridView>

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true" >

    <TextView
        android:id="@+id/footer_text"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@color/black"
        android:gravity="center"
        android:text="Footer!"
        android:textColor="@color/white"
        android:textSize="15dp" />
</LinearLayout>