如何使整个页面可滚动

时间:2015-11-24 10:38:58

标签: android scrollview android-xml

我的activityDrawerLayoutImageViewTextViewGridView。我希望整个页面滚动,但只有网格视图哈哈滚动。

这是我的xml。

 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout
    android:id="@+id/rel"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent">

    <!-- everything you already have -->
    <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/drawer_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <include
            android:id="@+id/app_bar"
            layout="@layout/home_app_bar" />


            <ImageView
                android:id="@+id/imageView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/picker1"
                android:layout_below="@+id/app_bar"
                android:layout_alignLeft="@+id/welcome"
                android:layout_alignStart="@+id/welcome"
                android:layout_marginTop="20dp"/>
            <android.support.v4.view.ViewPager
                android:id="@+id/pager"
                android:layout_below="@+id/welcome"
                android:layout_width="fill_parent"
                android:layout_height="150dp">
            </android.support.v4.view.ViewPager>

            <TextView
                android:id="@+id/welcome"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageView"
                android:padding="5dp"
                android:layout_marginTop="10dp"
                android:layout_marginLeft="5dp"
                android:text="Welcome,"
                android:textColor="#000000"
                android:textSize="15sp" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="5dp"
                android:text="Guest"
                android:textColor="@color/accentColor"
                android:textSize="15sp"
                android:id="@+id/name"
                android:layout_alignTop="@+id/welcome"
                android:layout_toRightOf="@+id/welcome"
                android:layout_toEndOf="@+id/welcome" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Date"
                android:layout_marginRight="10dp"
                android:padding="5dp"
                android:textColor="#000000"
                android:textSize="15sp"
                android:id="@+id/date"
                android:layout_alignTop="@+id/name"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true" />

            <GridView
                android:id="@+id/gridview"
                android:layout_width="match_parent"
                android:layout_height="fill_parent"
                android:columnWidth="80dp"
                android:numColumns="3"
                android:verticalSpacing="16dp"
                android:horizontalSpacing="16dp"
                android:padding="12dp"
                android:stretchMode="columnWidth"
                android:gravity="center"
                android:background="#ffffff"
                android:layout_below="@+id/pager"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true" />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Free Listing"
                android:id="@+id/buttonFreeListing"
                android:background="@color/primaryColorDark"
                android:textColor="#ffffff"
                android:layout_alignParentBottom="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true" />

            <Spinner
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/spinnerCity"
                android:layout_marginLeft="20dp"
                android:background="@drawable/edittext"
                android:layout_marginTop="20dp"
                android:layout_marginRight="10dp"
                android:layout_alignBottom="@+id/imageView"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true"
                android:layout_toRightOf="@+id/name"
                android:layout_toEndOf="@+id/name"
                android:layout_below="@+id/app_bar" />


        <fragment
            android:id="@+id/fragment_navigation_drawer"
            android:name="com.techieweb.solutions.pickeronline.NavigationDrawerFragment"
            android:layout_width="280dp"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            app:layout="@layout/fragment_navigation_drawer"
            tools:layout="@layout/fragment_navigation_drawer" />

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

</RelativeLayout>
</ScrollView>

请帮我解决这个问题。

5 个答案:

答案 0 :(得分:0)

以父视图为ScrollView的方式调整视图,并且它只有一个子视图,其余代码在这一个子视图中。例如:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
      <RelativeLayout>
        <!-- everything you already have -->
      </RelativeLayout>
</ScrollView>

答案 1 :(得分:0)

在你的DrawerLayout

中生两个孩子
  1. ScrollView
  2. DrawerFragment
  3. 内部ScrollView的{​​{1}}方向垂直,并将其他内容放在LinearLayout内。

    这一定会对你有帮助。

答案 2 :(得分:0)

您无法将GridView放在ScrollView内,因为它们都具有滚动效果。

因此,如果您希望在GridView内设置ScrollView,则必须以Problems with GridView inside ScrollView in androidHow to put GridView inside ScrollView个帖子的形式进行编程..

您可以TableLayout代替GridView,然后将所有内容都放在ScrollView之内..

<android.support.v4.widget.DrawerLayout  
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/drawer_layout"
  android:layout_width="match_parent"
  android:layout_height="match_parent">

  <ScrollView 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
     <RelativeLayout
     android:id="@+id/rel"
     android:layout_width="wrap_content"
     android:layout_height="fill_parent">

          //-----// 
     <TableLayout 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
          <TableRow
           android:layout_width="fill_parent"
           android:layout_height="fill_parent">
          </TableRow>
     </TableLayout> 
     </RelativeLayout>
  </ScrollView> 
<fragment
android:id="@+id/fragment_navigation_drawer"   
//--//
</android.support.v4.widget.DrawerLayout>

答案 3 :(得分:0)

你可以尝试这样......

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" >

<RelativeLayout android:id="@+id/rel" >

    <include
        android:id="@+id/app_bar"
        layout="@layout/home_app_bar" />

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

        // your other view
    </ScrollView>
</RelativeLayout>

<fragment android:id="@+id/fragment_navigation_drawer" />

答案 4 :(得分:0)

试试这段代码

     <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<RelativeLayout
    android:id="@+id/rel"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent">

    <ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fillViewport="true"
    >
    <RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="fill_parent">

    <include
        android:id="@+id/app_bar"
        layout="@layout/home_app_bar" />


    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/picker1"
        android:layout_below="@+id/app_bar"
        android:layout_alignLeft="@+id/welcome"
        android:layout_alignStart="@+id/welcome"
        android:layout_marginTop="20dp"/>
    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_below="@+id/welcome"
        android:layout_width="fill_parent"
        android:layout_height="150dp">
    </android.support.v4.view.ViewPager>

    <TextView
        android:id="@+id/welcome"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/imageView"
        android:padding="5dp"
        android:layout_marginTop="10dp"
        android:layout_marginLeft="5dp"
        android:text="Welcome,"
        android:textColor="#000000"
        android:textSize="15sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="5dp"
        android:text="Guest"
        android:textColor="@color/accentColor"
        android:textSize="15sp"
        android:id="@+id/name"
        android:layout_alignTop="@+id/welcome"
        android:layout_toRightOf="@+id/welcome"
        android:layout_toEndOf="@+id/welcome" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Date"
        android:layout_marginRight="10dp"
        android:padding="5dp"
        android:textColor="#000000"
        android:textSize="15sp"
        android:id="@+id/date"
        android:layout_alignTop="@+id/name"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />


    <GridView
        android:id="@+id/gridview"
        android:layout_width="match_parent"
        android:layout_height="fill_parent"
        android:columnWidth="80dp"
        android:numColumns="3"
        android:verticalSpacing="16dp"
        android:horizontalSpacing="16dp"
        android:padding="12dp"
        android:stretchMode="columnWidth"
        android:gravity="center"
        android:background="#ffffff"
        android:layout_below="@+id/pager"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Free Listing"
        android:id="@+id/buttonFreeListing"
        android:background="@color/primaryColorDark"
        android:textColor="#ffffff"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <Spinner
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/spinnerCity"
        android:layout_marginLeft="20dp"
        android:background="@drawable/edittext"
        android:layout_marginTop="20dp"
        android:layout_marginRight="10dp"
        android:layout_alignBottom="@+id/imageView"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_toRightOf="@+id/name"
        android:layout_toEndOf="@+id/name"
        android:layout_below="@+id/app_bar" />

</RelativeLayout>
</ScrollView>
</RelativeLayout>
<fragment
    android:id="@+id/fragment_navigation_drawer"
    android:name="com.techieweb.solutions.pickeronline.NavigationDrawerFragment"
    android:layout_width="280dp"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:layout="@layout/fragment_navigation_drawer"
    tools:layout="@layout/fragment_navigation_drawer" />

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