Comment utiliser le défilement rapide dans Android?

J’ai une liste d’événements séparés par mois et par année (juin 2010, juillet 2010 etc.)

Je veux activer le défilement rapide car la liste est très longue.

Comment puis-je activer le défilement rapide sur ListViews dans Android?

Dans la méthode onCreate de ListActivity, utilisez setFastScrollEnabled :

 getListView().setFastScrollEnabled(true); 

Utilisez Android: fastScrollEnabled dans votre fichier XML:

   

Essayez ce qui suit

      

Dans votre manifeste, définissez le style comme ceci:

  

c’est la listview

   

Si vous voulez pouvoir personnaliser votre défilement rapide, comme choisir votre propre image de défilement, je vous recommande d’utiliser cette source:

https://github.com/nolanlawson/CustomFastScrollViewDemo/

En gros, votre adaptateur listview devra implémenter un index de section. Cet indexeur de section peut être très dépouillé si vous ne voulez pas compliquer les choses et fournir un défilement rapide tout au long de la liste.

La source directe pour le fastscroller est ici:

https://github.com/nolanlawson/CustomFastScrollViewDemo/blob/master/src/com/nolanlawson/customfastscrollviewdemo/CustomFastScrollView.java

Placez cette vue autour de votre liste (imbriquez votre liste dans cette vue dans votre fichier de mise en page XML) et définissez android: fastScrollEnabled = “true” dans votre liste.

Vous souhaiterez peut-être également récupérer une réponse précédente: Problème d’affichage avec défilement rapide avec ListAdapter et SectionIndexer

Je voulais faire quelque chose de similaire à ce que vous vouliez réaliser. Je suis tombé sur ce post . C’est un excellent moyen d’implémenter le défilement rapide sans utiliser le standard AlphabetIndexer d’Android, qui nécessite un curseur que vous n’avez peut-être pas toujours.

Fondamentalement, vous devez implémenter l’interface SectionIndexer dans votre adaptateur. Dans votre cas, au lieu de la lettre actuelle, vous afficherez la période en cours lorsque vous défilerez.

Si vous souhaitez afficher l’indexation alphabétique, vous pouvez vérifier ceci:

https://github.com/andraskindler/quickscroll

C’est un projet de bibliothèque que j’ai créé, car je devais utiliser ce modèle de défilement dans quelques applications récentes, alors j’ai pensé que d’autres personnes pourraient être intéressées. C’est assez facile à utiliser, voir readme dans le lien github ci-dessus.

Définissez fastScrollEnabled dans votre fichier XML ou définissez-le au moment de l’exécution si nécessaire.

 1)  2) mListView.setFastScrollEnabled(true); 

Dans le fichier de disposition:

android: fastScrollEnabled = “true”

Vous pouvez activer la barre de défilement rapide par programme:

getListView (). setFastScrollEnabled (true);