我们在做一个表单界面的时候,表单项很多,会用ScrollView滚动条来滚动,但是这时候的Button会跟着滚动条一起滚动,如果我们希望Button固定在底部,滚动条只滚动表单,有两种方法:
1.用权重,即android:layout_weight,具体代码如下
<ScrollView
android:layout_height="0dp"
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_weight="8"
>
</ScrollView>
<LinearLayout
android:layout_height="0dp"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="@color/black"
android:layout_weight="1"
>
<Button
android:id="@+id/btregist"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:background="@drawable/regist_button"
android:layout_gravity="bottom"
></Button>
</LinearLayout>
第八行, android:layout_weight ="1",这样滚动条 和 Button 就以8:1的比例显示了,当然,我省略了滚动条内的部分。
2.第二种方法,相对布局,直接把button放下面,scrollView放在Button上面,这办法讨巧了
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ScrollView
android:layout_height="fill_parent"
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_above="@+id/llybuttom"
>
………………此处省略一万字
</ScrollView>
<LinearLayout
android:layout_height="wrap_content"
android:id="@+id/llybuttom"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_alignParentBottom="true"
>
<Button
android:id="@+id/btregist"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:background="@drawable/regist_button"
android:layout_gravity="bottom"
></Button>
</LinearLayout>
</RelativeLayout>
原文转自:http://www.cnblogs.com/huangquanhj/archive/2012/11/30/2795989.html