0

Below is my XML code. Where do I place a scrollview attribute on the whole screen because some of my view does not show when I switch to landscape view.

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

Below is the normal view

Normal view

Land scape view

LandScape View

What I want to achieve is to have a scrollview on the whole view so I can scroll down to see all views on landscape. Please note I am using a menu drawer layout is the last on my XML. if try placing the scroll view on before the Relative layout, I get the below error

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

And if I place after the relative layout, it lunches but do not scroll.

I have been able to resolve the scroll but this is how my drawer is showing. Intercepting my main view Here is the screen shot screen shot And here is my 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>

Please what could be wrong.

Glorfindel
  • 21,988
  • 13
  • 81
  • 109
Gstuntz
  • 434
  • 4
  • 10
  • Did you try and wrap the scroll view around "whole linearlayout vertical begin tag"? – cYrixmorten May 08 '16 at 13:39
  • Please just go through my code @cYrixmorten I am new in android and please tell me where to place the linear layout before the scroll view – Gstuntz May 08 '16 at 13:44

1 Answers1

1

You can put scroll view just after the <RelativeLayout..>. Try this:

<?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>
birraa
  • 430
  • 1
  • 4
  • 15
  • 1
    I have tried that often a time and the error I get is `java.lang.IllegalStateException: ScrollView can host only one direct child` – Gstuntz May 08 '16 at 14:15
  • 1
    That is because Scroll view can contain only one child. You can add one more `` just after the `` and close it at the end just before closing the `` so that everything is contained inside the `` which is now the child of ``. – birraa May 08 '16 at 14:26
  • Please check my updated code..I do not know where is wrong and my screen shot too – Gstuntz May 08 '16 at 17:19
  • For the DrawerLayout must be measured with MeasureSpec.EXACTLY error check http://stackoverflow.com/questions/31746072/drawerlayout-must-be-measured-with-measurespec-exactly-error – birraa May 09 '16 at 07:16