1

我有一个如下的 XML 布局。我有一个文本视图,后跟一些复选框,然后是一个按钮。我已将所有复选框包含在线性布局中,并为此设置了滚动视图。向下滚动后我无法查看我的按钮,我该怎么办?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >


    <TextView />

    <ScrollView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true"
        android:orientation="vertical" >

        <LinearLayout>

            <CheckBox />

            <CheckBox />

            <CheckBox/>

            <CheckBox/>

            <CheckBox/>

            <CheckBox/>

            <CheckBox/>

            <CheckBox/>

            <CheckBox />

            <CheckBox/>

            <CheckBox />
        </LinearLayout>
    </ScrollView>

    <Button

    </Button>

</LinearLayout>
4

3 回答 3

1

滚动视图有一个条件,滚动视图应该只有一个子视图,子视图可能包含子视图

如果你想显示你有使用视图 wight 概念的按钮

    <LinearLayout
        <TextView
    <ScrollView   
    <LinearLayout
      <CheckBox
        <CheckBox
        <CheckBox
        <CheckBox
        .



        <CheckBox
    LinearLayout>
    ScrollView>
        <Button
 android:layout_weight="1"

    LinearLayout >
于 2012-10-06T11:57:58.003 回答
0

您必须使用 Relativelayout 或 FrameLayout 以获得更好的解决方案。这是使用相对布局的代码

 <?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" >


        <Button
            android:id="@+id/relative_button"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
android:text="hello one"
             >
        </Button>

        <ScrollView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_above="@id/relative_button"
             >

         <LinearLayout>

                <CheckBox />

                <CheckBox />

                <CheckBox/>

                <CheckBox/>

                <CheckBox/>

                <CheckBox/>

                <CheckBox/>

                <CheckBox/>

                <CheckBox />

                <CheckBox/>

                <CheckBox />
            </LinearLayout>
        </ScrollView>

    </RelativeLayout>
于 2012-10-08T04:07:27.713 回答
0

试试下面的代码。您需要将 Button 与底部对齐,并在 Button 顶部对齐包含复选框的 LinearLayout。我已经尝试过这段代码,它对我有用。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:text="ABC" />

    <ScrollView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView"
        android:layout_above="@+id/button"
        android:orientation="vertical" >

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <CheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
        </LinearLayout>
    </ScrollView>

    <Button
        android:id="@+id/button"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</RelativeLayout>
于 2012-10-08T06:57:05.170 回答