如何在下面的代码中放置ScrollView?

时间:2016-05-08 13:25:44

标签: android

下面是我的XML代码。我在哪里放置一个scrollview属性在整个屏幕上,因为当我切换到横向视图时,我的某些视图没有显示。

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



<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">







    <!--  whole linearlayout vertical begin tag   -->

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/linearLayout">



        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutCalendar"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_margin="10dp"
                android:text="Large Text"
                android:id="@+id/textView" />
            <DatePicker
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/datePicker"
                android:calendarViewShown="false"
                android:datePickerMode="spinner"/>
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="OK"
                android:id="@+id/button" />

        </LinearLayout>


        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutFollowUpRequest"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:text="Large Text"
                android:id="@+id/textView2" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView3" />

        </LinearLayout>

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutBookingRequest"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:text="Large Text"
                android:id="@+id/textView4" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView5" />

        </LinearLayout>

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutOccupancy"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView6" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView7" />



        </LinearLayout>






    </LinearLayout>     <!-- Whole linear Vertical layout close tag    -->



    <!-- Whole linear Horizontal layout begin tag    -->
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/linearLayout"
        android:layout_toRightOf="@+id/linearLayout"
        android:layout_toEndOf="@+id/linearLayout"
        android:layout_marginLeft="80dp">

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/linearLayout"
            android:layout_toRightOf="@+id/linearLayout"
            android:layout_toEndOf="@+id/linearLayout"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:background="@drawable/border">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Follow Up"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textViewFollowUp" />
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="0"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/buttonFollowUp" />




        </LinearLayout>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/linearLayout"
            android:layout_toRightOf="@+id/linearLayout"
            android:layout_toEndOf="@+id/linearLayout"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:background="@drawable/border">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Events Today"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textViewEventsToday" />
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:text="0"
                android:id="@+id/buttonEventsToday" />




        </LinearLayout>
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/linearLayout"
            android:layout_toRightOf="@+id/linearLayout"
            android:layout_toEndOf="@+id/linearLayout"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:background="@drawable/border">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Bookings Today"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textViewBookingsToday" />
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="0"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/buttonBookingsToday" />

        </LinearLayout>



    </LinearLayout>



    <!-- Whole linear horizontal layout close tag    -->


<!--  linear vertical layout for drawer tag start   -->

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginTop="50dp">
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/drawerLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
        <FrameLayout android:id="@+id/maintcont"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

        </FrameLayout>
        <ListView android:id="@+id/drawerlist"
            android:entries="@array/planets"
            android:layout_width="240dp"
            android:layout_height="match_parent"
            android:layout_gravity="left"
            android:background="#fff"
            >

        </ListView>



    </android.support.v4.widget.DrawerLayout>


</LinearLayout>
</LinearLayout>
<!--  linear vertical layout for drawer tag close   -->




</RelativeLayout>

以下是普通视图

Normal view http://imageshack.com/a/img923/7347/FQqYOQ.png

Land scape view

LandScape View http://imageshack.com/a/img922/3306/rM1qym.png

我想要实现的是在整个视图上有一个滚动视图,所以我可以向下滚动以查看所有关于横向的视图。请注意我使用菜单抽屉布局是我的XML上的最后一个。如果尝试在相对布局之前放置滚动视图,我会得到以下错误

java.lang.IllegalArgumentException: DrawerLayout must be measured with MeasureSpec.EXACTLY.

如果我放置在相对布局之后,它会进行午餐但不会滚动。

我已经能够解决滚动但这就是我的抽屉显示的方式。拦截我的主要观点 这是屏幕截图 screen shot http://imageshack.com/a/img923/2580/ZdWwO9.png 这是我的xml

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

<RelativeLayout        xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/drawerLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
        <FrameLayout android:id="@+id/maintcont"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

        </FrameLayout>
        <ListView android:id="@+id/drawerlist"
            android:entries="@array/planets"
            android:layout_width="240dp"
            android:layout_height="match_parent"
            android:layout_gravity="left"
            android:background="#fff"
            >

        </ListView>



    </android.support.v4.widget.DrawerLayout>


</LinearLayout>














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


 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin">












    <!--  whole linearlayout vertical begin tag   -->

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/linearLayout">



        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutCalendar"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_margin="10dp"
                android:text="Large Text"
                android:id="@+id/textView" />
            <DatePicker
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/datePicker"
                android:calendarViewShown="false"
                android:datePickerMode="spinner"/>
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="OK"
                android:id="@+id/button" />

        </LinearLayout>


        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutFollowUpRequest"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:text="Large Text"
                android:id="@+id/textView2" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView3" />

        </LinearLayout>

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutBookingRequest"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:text="Large Text"
                android:id="@+id/textView4" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView5" />

        </LinearLayout>

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:id="@+id/linearLayoutOccupancy"
            android:background="@drawable/border"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:layout_marginLeft="@dimen/activity_buttom_margin">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView6" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Large Text"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textView7" />



        </LinearLayout>






    </LinearLayout>     <!-- Whole linear Vertical layout close tag    -->









    <!-- Whole linear Horizontal layout begin tag    -->
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/linearLayout"
        android:layout_toRightOf="@+id/linearLayout"
        android:layout_toEndOf="@+id/linearLayout"
        android:layout_marginLeft="80dp">

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/linearLayout"
            android:layout_toRightOf="@+id/linearLayout"
            android:layout_toEndOf="@+id/linearLayout"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:background="@drawable/border">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Follow Up"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textViewFollowUp" />
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="0"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/buttonFollowUp" />




        </LinearLayout>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/linearLayout"
            android:layout_toRightOf="@+id/linearLayout"
            android:layout_toEndOf="@+id/linearLayout"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:background="@drawable/border">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Events Today"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textViewEventsToday" />
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:text="0"
                android:id="@+id/buttonEventsToday" />




        </LinearLayout>
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/linearLayout"
            android:layout_toRightOf="@+id/linearLayout"
            android:layout_toEndOf="@+id/linearLayout"
            android:layout_marginBottom="@dimen/activity_buttom_margin"
            android:background="@drawable/border">


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="Bookings Today"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/textViewBookingsToday" />
            <Button
                style="?android:attr/buttonStyleSmall"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="0"
                android:layout_marginLeft="@dimen/activity_buttom_margin"
                android:layout_marginRight="@dimen/activity_buttom_margin"
                android:id="@+id/buttonBookingsToday" />

        </LinearLayout>


    </LinearLayout>

</ScrollView>



    </RelativeLayout>

请问可能是错的。

1 个答案:

答案 0 :(得分:1)

您可以在<RelativeLayout..>之后放置滚动视图。试试这个:

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

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

<ScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_below="@+id/someid">

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

    <!--  whole linearlayout vertical begin tag   -->

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/linearLayout">
        ...
    </LinearLayout>
</RelativeLayout>
</ScrollView>
</RelativeLayout>