简体   繁体   中英

Scrollview not scrolling the entire screen

Currently, my scrollview could only scroll the bottom part of the screen. However though, I want the scrollview to be able to scroll the entire screen like how you would be able to normally and smoothly scroll an entire screen within an app. But i can't figure out what went wrong where for me as only i could scroll the bottom portion of the screen.Could anyone advise me on how? Thanks

<?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"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    tools:context=".SettingsFragment">

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    android:animateLayoutChanges="true">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <RelativeLayout
                android:id="@+id/rellay1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@drawable/grad"
                android:paddingBottom="20dp">

                <RelativeLayout
                    android:id="@+id/imgUser"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="20dp"
                    android:background="@drawable/circle_border">

                    <ImageView
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_margin="9dp"
                        android:adjustViewBounds="true"
                        android:background="@drawable/circle"
                        android:padding="3dp"
                        android:scaleType="centerInside"
                        android:src="@drawable/ic_user" />

                </RelativeLayout>

                <TextView
                    android:id="@+id/tv_name"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/imgUser"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="15sp"
                    android:fontFamily="sans-serif-light"
                    android:text="Joey Tribbiani"
                    android:textColor="@color/white"
                    android:textSize="32sp" />


                <TextView
                    android:id="@+id/tv_address"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/tv_name"
                    android:layout_centerHorizontal="true"
                    android:fontFamily="sans-serif"
                    android:text="new york, usa"
                    android:textAllCaps="true"
                    android:textColor="@color/address"
                    android:textSize="14sp" />


            </RelativeLayout>
        </RelativeLayout>


        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:background="@color/followersBg"
            android:gravity="center"
            android:layout_marginTop="250dp"
            android:id="@+id/Rl1"
            android:paddingBottom="5dp"
            android:paddingTop="5dp">

            <androidx.constraintlayout.widget.ConstraintLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:weightSum="80">


                <TextView
                    android:id="@+id/tvTitle"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="15dp"
                    android:layout_marginLeft="15dp"
                    android:layout_marginTop="15dp"
                    android:text="My Order"
                    android:textColor="@color/white"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    tools:layout_conversion_absoluteHeight="19dp"
                    tools:layout_conversion_absoluteWidth="58dp" />

                <ImageView
                    android:id="@+id/ivWallet"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="35dp"
                    android:layout_marginLeft="35dp"
                    android:layout_marginTop="45dp"
                    android:src="@drawable/ic_baseline_account_balance_wallet_24"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    tools:layout_conversion_absoluteHeight="24dp"
                    tools:layout_conversion_absoluteWidth="24dp" />

                <TextView
                    android:id="@+id/tvTitleToBePaid"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="17dp"
                    android:layout_marginLeft="17dp"
                    android:layout_marginTop="8dp"
                    android:text="To be Paid"
                    android:textColor="@color/white"
                    android:textSize="13dp"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toBottomOf="@+id/ivWallet"
                    tools:layout_conversion_absoluteHeight="19dp"
                    tools:layout_conversion_absoluteWidth="66dp" />

                <ImageView
                    android:id="@+id/ivBox"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="75dp"
                    android:layout_marginLeft="75dp"
                    android:layout_marginTop="45dp"
                    android:src="@drawable/ic_baseline_tobedelivered_24"
                    app:layout_constraintStart_toEndOf="@+id/ivWallet"
                    app:layout_constraintTop_toTopOf="parent"
                    tools:layout_conversion_absoluteHeight="24dp"
                    tools:layout_conversion_absoluteWidth="24dp" />

                <TextView
                    android:id="@+id/tvTobeDelivered"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="24dp"
                    android:layout_marginLeft="24dp"
                    android:layout_marginTop="8dp"
                    android:text="To be Delivered"
                    android:textColor="@color/white"
                    android:textSize="13dp"
                    app:layout_constraintStart_toEndOf="@+id/tvTitleToBePaid"
                    app:layout_constraintTop_toBottomOf="@+id/ivBox" />

                <ImageView
                    android:id="@+id/ivBox2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="76dp"
                    android:layout_marginLeft="76dp"
                    android:layout_marginTop="44dp"
                    android:src="@drawable/ic_baseline_tobereceived_24"
                    app:layout_constraintStart_toEndOf="@+id/ivBox"
                    app:layout_constraintTop_toTopOf="parent"
                    tools:layout_conversion_absoluteHeight="24dp"
                    tools:layout_conversion_absoluteWidth="24dp" />

                <TextView
                    android:id="@+id/tvTobeReceived"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="20dp"
                    android:layout_marginLeft="20dp"
                    android:layout_marginTop="8dp"
                    android:text="To be Received"
                    android:textColor="@color/white"
                    android:textSize="13dp"
                    app:layout_constraintStart_toEndOf="@+id/tvTobeDelivered"
                    app:layout_constraintTop_toBottomOf="@+id/ivBox2" />

                <ImageView
                    android:id="@+id/ivThumbs"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="90dp"
                    android:layout_marginLeft="90dp"
                    android:layout_marginTop="45dp"
                    android:layout_marginEnd="35dp"
                    android:layout_marginRight="35dp"
                    android:src="@drawable/ic_baseline_tobeevaluated_24"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toEndOf="@+id/ivBox2"
                    app:layout_constraintTop_toTopOf="parent"
                    tools:layout_conversion_absoluteHeight="24dp"
                    tools:layout_conversion_absoluteWidth="24dp" />

                <TextView
                    android:id="@+id/tvTobeEvaluated"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="18dp"
                    android:layout_marginLeft="18dp"
                    android:layout_marginTop="8dp"
                    android:textSize="13dp"
                    android:text="To be Evaluated"
                    android:textColor="@color/white"
                    app:layout_constraintStart_toEndOf="@+id/tvTobeReceived"
                    app:layout_constraintTop_toBottomOf="@+id/ivBox2" />

            </androidx.constraintlayout.widget.ConstraintLayout>

        </RelativeLayout>

        <TextView
            android:id="@+id/TvRecommendation"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Recommended"
            android:layout_marginTop="25dp"
            android:layout_centerHorizontal="true"
            android:layout_below="@+id/Rl1"/>

        <GridView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/GvRecommendations"
            android:layout_below="@+id/TvRecommendation"
            android:numColumns="2"
            android:verticalSpacing="5dp"
            />

    </RelativeLayout>
</ScrollView>
</RelativeLayout>

I think your layout is too unnecessary complicated. The highest RelativeLayout does nothing here. Make ScrollView your root view and set it's width and height to match parent.

Try it:

<androidx.core.widget.NestedScrollView
    android:layout_width="wrap_content"
    android:layout_height="match_parent">

...

</androidx.core.widget.NestedScrollView>

Also You can try to set "android:layout_height="match_parent">" for ScrollView and set "android:layout_height="wrap_content">" for its child layout.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM