Comment toujours afficher la barre de défilement


256

La barre de défilement dans ma vue de défilement n'est visible que lorsque je commence à faire défiler. Comment puis-je toujours le montrer?

Réponses:


543

Pour l'instant, le meilleur moyen est d'utiliser android:fadeScrollbars="false"en xml qui est équivalent au ScrollView.setScrollbarFadingEnabled(false);code java.


pour ListView n'a pas fonctionné, mais cela a fonctionné:view.setScrollBarFadeDuration(0);
user924

3
la réponse correcte et acceptée doit donc être @Tanmay Mandal answer ( setScrollBarFadeDuration(0)), car setScrollbarFadingEnabled(false)cela ne fonctionne pas partout
user924

ou il arrête les travaux par exemple à cause de ce qui est décrit ici stackoverflow.com/a/6673848/7767664 (onStop, onStart again et faield), setScrollBarFadeDuration(0);est donc plus fiable
user924


42

Il y a 2 façons:

  • à partir du code Java: ScrollView.setScrollbarFadingEnabled(false);
  • à partir du code XML: android:fadeScrollbars="false"

Aussi simple que cela!


11

Essayez ceci car les suggestions ci-dessus ne fonctionnaient pas pour moi lorsque je voulais le faire pour un TextView:

TextView.setScrollbarFadingEnabled(false);

Bonne chance.


@ user924 bien sûr, mais cette réponse a été publiée 10 jours après mon commentaire
sXe

10

N'oubliez pas d'ajouter android:scrollbars="vertical"avec android:fadeScrollbars="false"ou il ne s'affichera pas du tout dans certains cas.


9

Essayez android:scrollbarAlwaysDrawVerticalTrack="true"vertical. et essayez android:scrollbarAlwaysDrawHorizontalTrack="true"horizontal


8

Étant donné qu'aucun des éléments ci-dessus n'a fonctionné pour moi, voici ce qui s'est passé: android:scrollbarDefaultDelayBeforeFade="500000"


8

android:scrollbarFadeDuration="0"parfois ne fonctionne pas après avoir quitté les applications et recommencer. J'ajoute donc gallery.setScrollbarFadingEnabled(false);à l'activité et ça marche!


6

Ces deux ensemble ont travaillé pour moi:

android:scrollbarFadeDuration="0"
android:scrollbarAlwaysDrawVerticalTrack="true"

6

Donnez un style à votre barre de défilement Visibilité, couleur et épaisseur comme ceci:

<ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/recycler_bg"

        <!--Show Scroll Bar-->
        android:fadeScrollbars="false"
        android:scrollbarAlwaysDrawVerticalTrack="true"
        android:scrollbarFadeDuration="50000"

        <!--Scroll Bar thickness-->
        android:scrollbarSize="4dp"

        <!--Scroll Bar Color-->
        android:scrollbarThumbVertical="@color/colorSecondaryText"/>

J'espère que cela vous fera gagner du temps.


5

J'ai eu le même problème. La barre avait la même couleur de fond. Essayer:

android:scrollbarThumbVertical="@android:color/black"

4

Simple et facile. Ajoutez cet attribut à ScrollBar:

android:fadeScrollbars="false"

Ou vous pouvez le faire en :

scrollView.setScrollbarFadingEnabled(false);

Ou dans :

scrollView.isScrollbarFadingEnabled = false

3

setVertical * a aidé à rendre la barre de défilement verticale toujours visible par programmation

scrollView.setScrollbarFadingEnabled(false);
scrollView.setVerticalScrollBarEnabled(true);
scrollView.setVerticalFadingEdgeEnabled(false);

2

Le réglage fera l'affaire. Modifiez @drwable pour votre propre style.

android:scrollbars="vertical"
            android:scrollbarAlwaysDrawVerticalTrack="true"
            android:fadeScrollbars="false"
            android:scrollbarThumbVertical="@drawable/scroll"`
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.