ScrollView和LinearLayout难度大

poe*_*poe 9 android scrollview android-linearlayout

我正在尝试制作Android布局:垂直LinearLayout中的3个组件.中心组件是ScrollView包含a的组件TextView.当TextView包含大量文本(超过屏幕上可以容纳的文本)时,ScrollView会一直增长到屏幕底部,显示滚动条,并将最后一个组件(内部LinearLayout有一个)推Button离屏幕.

如果内的文本TextView内的ScrollView足够短,在屏幕底部的按钮被完全定位.

我想要实现的布局是:

我编写的布局的XML是:

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

<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:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="#FFFFFF"
            android:layout_marginLeft="10dip"
            android:layout_marginRight="10dip"
            android:layout_marginTop="10dip"
            android:layout_marginBottom="10dip"
            android:text="Title />

    <ScrollView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

        <TextView android:id="@+id/text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:autoLink="web"
                android:textColor="#FFFFFF"
                android:background="#444444"
                android:padding="10dip" />

    </ScrollView>

    <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1">

        <LinearLayout
                android:orientation="horizontal"
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="1"/>

        <Button android:id="@+id/login_button"
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_gravity="bottom"
                android:layout_weight="1"
                android:text="@string/next_button"/>

    </LinearLayout>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

小智 6

scrollview是第二个视图对象,设置为wrap_content,它不仅仅是屏幕.

我推荐一个RelativeLayout.首先是textview android:alignParentTop="true",底部是LinearLayout,下面android:alignParentBottom="true"是在xml中最后列出的scrollview值android:alignBelow="@id/whatYouCallTheHeader.

无论大小如何,这将对齐屏幕底部的底栏和顶部的标题.然后在页眉和页脚放置后,scrollview将有自己的位置.