web-dev-qa-db-fra.com

ScrollView ne défile pas vers le bas

J'ai un certain problème dans mon activité. ScrollView ne défile pas vers le bas.
J'ai une capture d'écran pour vous. enter image description here

Si vous regardez la barre de défilement de scrollView, vous pouvez voir qu’elle ne défile pas vers le bas.
Voici ma mise en page XML du scrollView:

<ScrollView
    Android:id="@+id/scrollView1"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:layout_alignParentBottom="true"
    Android:layout_alignParentLeft="true"
    Android:layout_alignParentRight="true"
    Android:fillViewport="true"
    Android:layout_below="@+id/step2_header" >

    <RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:layout_margin="10dp" >

        <TextView
            Android:id="@+id/step2_headerText"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_alignParentLeft="true"
            Android:layout_alignParentTop="true"
            Android:layout_alignParentRight="true"
            Android:gravity="center"
            Android:text="@string/Schritt2"
            Android:textAppearance="?android:attr/textAppearanceMedium"
            Android:textColor="@color/dark_blue"
            Android:textStyle="bold|italic" />

        <ImageView
            Android:id="@+id/step2_image"
            Android:layout_width="wrap_content"
            Android:layout_height="100dp"
            Android:layout_below="@+id/step2_headerText"
            Android:layout_alignParentLeft="true"
            Android:layout_alignParentRight="true"
            Android:layout_marginTop="10dp"
            Android:src="@drawable/menu_leiste" />

        <TextView
            Android:id="@+id/step2_infoText"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_marginTop="10dp"
            Android:layout_alignParentLeft="true"
            Android:layout_below="@+id/step2_image"
            Android:text="@string/step2Text"
            Android:textAppearance="?android:attr/textAppearanceSmall" />

       <ImageView
            Android:id="@+id/step2_but1Img"
            Android:layout_width="match_parent"
            Android:layout_height="35dp"
            Android:layout_below="@+id/step2_infoText"
            Android:layout_marginTop="10dp"
            Android:src="@drawable/menu_leiste_selector" />

        <TextView
            Android:id="@+id/step2_but1Text"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_alignBottom="@+id/step2_but1Img"
            Android:layout_alignParentLeft="true"
            Android:layout_alignTop="@+id/step2_but1Img"
            Android:layout_marginLeft="10dp"
            Android:gravity="center"
            Android:text="@string/step2But1Text"
            Android:textAppearance="?android:attr/textAppearanceMedium"
            Android:textColor="@color/white" />

        <ImageView
            Android:id="@+id/step2_but1ArrowImg"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_margin="3dp"
            Android:layout_alignBottom="@+id/step2_but1Img"
            Android:layout_alignParentRight="true"
            Android:layout_alignTop="@+id/step2_but1Img"
            Android:src="@drawable/location_web_site" />

        <ImageView
            Android:id="@+id/step2_but2Img"
            Android:layout_width="match_parent"
            Android:layout_height="35dp"
            Android:layout_below="@+id/step2_but1Img"
            Android:layout_marginTop="10dp"
            Android:src="@drawable/menu_leiste_selector" />

        <TextView
            Android:id="@+id/step2_but2Text"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_alignBottom="@+id/step2_but2Img"
            Android:layout_alignParentLeft="true"
            Android:layout_alignTop="@+id/step2_but2Img"
            Android:layout_marginLeft="10dp"
            Android:gravity="center"
            Android:text="@string/step2But2Text"
            Android:textAppearance="?android:attr/textAppearanceMedium"
            Android:textColor="@color/white" />

        <ImageView
            Android:id="@+id/step2_but2ArrowImg"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_margin="3dp"
            Android:layout_alignBottom="@+id/step2_but2Img"
            Android:layout_alignParentRight="true"
            Android:layout_alignTop="@+id/step2_but2Img"
            Android:src="@drawable/location_web_site" />

    </RelativeLayout>

</ScrollView>

Comment puis-je le réparer?

36
medphys_muc

Le problème est Android: layout_margin = "10dp" dans RelativeLayout of SrcollView 

Remplacer

 <RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:layout_margin="10dp">

avec

<RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:padding="10dp" >
116
Kirit Vaghela

utiliser dans scrollView xml

Android:paddingBottom="10dp"

ça va décaler le contenu de la vue de défilement de 10 dp vers le haut, pas la vue.

6
Mudassar Shaheen

Pour moi, j'ai une autre solution spécifique si la disposition parent de ScrollView est ConstrantLayout. Si c'est le cas, il n'est pas nécessaire de définir le remplissage ou la marge.

<androidx.constraintlayout.widget.ConstraintLayout 
....>
    <ScrollView
            Android:layout_width="match_parent"
            Android:layout_height="0dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintTop_toBottomOf="<if there is any element before this this scrollview >">

            <RelativeLayout
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content" >
1
I Made Mudita

Pour moi, définir explicitement la hauteur de certains de mes éléments internes m'a aidé.

0
ehacinom