0

我正在尝试将相对布局的内容设置为 Scrollview,因为它不适合屏幕。我的 XML 文件包含线性和相对布局,其中线性作为父布局,相对作为子布局。

虽然我已经浏览过关于这个主题的大多数问题,但我能找到的只是如何分别在线性或相对布局中插入 Scrollview,但不是当两种布局都在一个文件中时。

我的 XML 文件

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

<!-- 
   Being of Linear Layout
 -->

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


    <TextView
        android:id="@+id/week1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/week1"
        android:textColor="#FFFFFF"
        android:textSize="25sp"
        android:paddingTop="50dp"
        android:background="#00141c" />
<!--
Begin Relative Layout
-->

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollHorizontally="true">

    <ImageView
        android:id="@+id/treadmillimage"
        android:layout_width="115dp"
        android:layout_height="93dp"
        android:paddingTop="10dp"
        android:src="@drawable/treadmill" />

    <EditText
        android:id="@+id/durOnTreadmill"
        android:layout_width="129dp"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="number"
        android:layout_marginLeft="180dp" 
        android:layout_centerVertical="true"/>

<!--
End Relative Layout
-->
    </RelativeLayout>

    <TextView
        android:id="@+id/treadmilltext"
        android:layout_width="91dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:text="@string/treadmill"
        android:textColor="#FFFFFF"
        android:textSize="20sp" />

<!--
Begin Relative Layout
-->

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollHorizontally="true">

    <ImageView
        android:id="@+id/stepperimage"
        android:layout_width="115dp"
        android:layout_height="93dp"
        android:paddingTop="10dp"
        android:src="@drawable/stepper" />

    <EditText
        android:id="@+id/durOnStepper"
        android:layout_width="129dp"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="number"
        android:layout_marginLeft="180dp" 
        android:layout_centerVertical="true"/>

<!--
End Relative Layout
-->
    </RelativeLayout>

    <TextView
        android:id="@+id/steppertext"
        android:layout_width="91dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:text="@string/stepper"
        android:textColor="#FFFFFF"
        android:textSize="20sp" />

<!--
Begin Relative Layout
-->
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollHorizontally="true">

    <ImageView
        android:id="@+id/stationaryrowing"
        android:layout_width="115dp"
        android:layout_height="93dp"
        android:paddingTop="10dp"
        android:src="@drawable/stationaryrowing" />

    <EditText
        android:id="@+id/durOnStationaryRowing"
        android:layout_width="129dp"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="number"
        android:layout_marginLeft="180dp" 
        android:layout_centerVertical="true"/>

<!--
End Relative Layout
-->
    </RelativeLayout>

    <TextView
        android:id="@+id/stationaryrowingtext"
        android:layout_width="91dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:text="@string/stationaryrowing"
        android:textColor="#FFFFFF"
        android:textSize="20sp" />

<!--
Begin Relative Layout
-->
     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollHorizontally="true">

    <ImageView
        android:id="@+id/exercisebikeimage"
        android:layout_width="115dp"
        android:layout_height="93dp"
        android:paddingTop="10dp"
        android:src="@drawable/excerisebike" />

    <EditText
        android:id="@+id/durOnexcerisebike"
        android:layout_width="129dp"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="number"
        android:layout_marginLeft="180dp" 
        android:layout_centerVertical="true"/>

 <!--
End Relative Layout
-->
    </RelativeLayout>

     <TextView
        android:id="@+id/excerisebiketext"
        android:layout_width="91dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:text="@string/exercisebike"
        android:textColor="#FFFFFF"
        android:textSize="20sp" />

 <!--
Begin Relative Layout
-->
       <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollHorizontally="true">

    <ImageView
        android:id="@+id/ellipticaltrainerimage"
        android:layout_width="115dp"
        android:layout_height="93dp"
        android:paddingTop="10dp"
        android:src="@drawable/ellipticaltrainer" />

    <EditText
        android:id="@+id/durOnellipticaltrainer"
        android:layout_width="129dp"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="number"
        android:layout_marginLeft="180dp" 
        android:layout_centerVertical="true"/>

<!--
End Relative Layout
-->
    </RelativeLayout>

        <TextView
        android:id="@+id/ellipticaltrainertext"
        android:layout_width="91dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:text="@string/ellipticaltrainer"
        android:textColor="#FFFFFF"
        android:textSize="20sp" />

<!--
End Linear Layout
-->
</LinearLayout>   

第1周TextView下面的所有内容都需要在Scrollview中

在此先感谢,将非常感谢所有答案:)

4

2 回答 2

1

如果您不希望最顶部TextView成为滚动区域的一部分,那么您必须将RelativeLayouts 嵌套到另一个布局中,因为 aScrollView只能有一个直接子级。

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

    <TextView ... />

    <ScrollView ... >
        <!-- only one direct child for scrollview: -->
        <LinearLayout ... >

            <RelativeLayout ... />
            <TextView ... />
            <RelativeLayout ... />
            <TextView ... />
            <RelativeLayout ... />
            <TextView ... />
            <RelativeLayout ... />
            <TextView ... />
            <!-- etc -->

        </LinearLayout>

    </ScrollView>

</LinearLayout>
于 2013-03-17T18:31:26.950 回答
0

只需将 scorolleview 作为 RelativeLayout 的父级,如下所示:

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

<RelativeLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:scrollHorizontally="true">

    <ImageView
        android:id="@+id/treadmillimage"
        android:layout_width="115dp"
        android:layout_height="93dp"
        android:paddingTop="10dp"
        android:src="@drawable/treadmill" />

.....
.....
</RelativeLayout>
</ScrollView>
于 2013-03-17T17:42:52.430 回答