使用ScrollView和LinearLayout,Android

时间:2014-11-02 07:13:11

标签: android android-layout scrollview

在我的xml文件中,我有一个linearLayout和一个按钮。 linearLayout包含许多textView和复选框。所以我想要这些textViews和复选框滚动,但按钮应该保留在它的位置,即它不应该使用textViews滚动。为此,我用scrollView这样覆盖我的linearLayout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/homeo11" >
    <ScrollView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical">
          <LinearLayout 
             android:id="@+id/nexttodetail"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:orientation="vertical" 
             android:layout_marginTop="10dp">

          </LinearLayout>
    </ScrollView>>

   <Button   android:id="@+id/Next4"
            android:layout_gravity="right"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="Next" />

 </LinearLayout>

但这样做,隐藏了我的按钮。意味着textviews和复选框现在滚动正常,但我看不到我的下一个按钮。我尝试将scrollView布局:height从fill_parent替换为wrap_content,但这不起作用。有帮助吗?

1 个答案:

答案 0 :(得分:1)

使用RelativeLayout作为根视图,然后使用align_above,align_parent_top和align_parent_bottom设置组件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/homeo11" >

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"      
        android:layout_above="@+id/Next4" >       
            <LinearLayout 
                android:id="@+id/nexttodetail"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" 
                android:layout_marginTop="10dp">

                    (...)

            </LinearLayout>
    </ScrollView>>

   <Button  
       android:id="@+id/Next4"
       android:layout_gravity="right"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentBottom="true"     
       android:layout_marginTop="10dp"
       android:text="Next" />

 </RelativeLayout>