滚动视图上方的线性布局

时间:2011-12-16 19:35:26

标签: android scrollview android-linearlayout

我有一个简单的android布局,包含一个包含tablelayout的scrollview。此表格显示正确,但我想在滚动视图上方添加静态标题,以便表格中的列标签始终保持在屏幕顶部。但是,当我在布局文件中的<LinearLayout>上方添加<ScrollView>时,它会全部消失。

有人能发现我的xml文件出错吗?

<?xml version="1.0" encoding="utf-8"?>

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/linearLayout1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="top" >

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

        <ScrollView
            android:id="@+id/scrollView1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >

            <TableLayout 
                android:id="@+id/mainTable"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent" />
        </ScrollView>

    </LinearLayout>

实际上,我没有看到滚动视图或表格布局,但如果我删除了header linearlayout,它就会显示正常。

3 个答案:

答案 0 :(得分:3)

LinearLayouts需要设置android:orientation参数。

答案 1 :(得分:1)

您必须将父LinearLayout的方向设置为垂直!默认设置为水平,这是您没有看到ScrollView的方式。

你可以试试这个:

<LinearLayout 
        android:id="@+id/header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:layout_weight="0"
        />

    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="fill_parent"
        android:layout_height="0dp" android:layout_weight="1">

        <TableLayout 
            android:id="@+id/mainTable"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />
    </ScrollView>

希望这会有所帮助!!

答案 2 :(得分:0)

您的scrollview的layout_height设置为fill_parent。使用wrap_content。