Bonjour,

Dans une page de mon appli, je charge des données qui viennent de ma bdd dans une ListView.
J'utilise pour cela un ContentProvider via CursorLoader. (avec un CursorAdapter pour la mise en forme).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
@Override
    public Loader<Cursor> onCreateLoader(int id, Bundle args) {
        CursorLoader cursorLoader = new CursorLoader(getActivity(), MyContentProvider.CONTENT_URI_CALENDRIER,null,null,null,null);
        return cursorLoader;
    }
 
    @Override
    public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
        calendrierCursorAdapter.swapCursor(data);
    }
Les données se chargent bien, j'affiche correctement ma liste.

Là où j'ai du mal, c'est que je souhaiterais qu'une fois toutes les données chargées, la ListView se scroll jusqu'à un élément précis (mes éléments de la liste sont des événements d'un calendrier, ils ont un marqueur booléen "terminé", je souhaite afficher le dernier terminé).
Il existe la méthode smoothscrolltoposition(int position), sauf qu'il faut que j'appelle cette méthode lorsque ma liste est chargée, et je n'arrive pas à trouver quand. Comment faire ?
J'ai essayé dans la méthode onLoadFinished, mais ça ne fonctionne pas.

J'ai fais quelques recherches, je suis tombé là dessus:
http://stackoverflow.com/questions/4...eing-populated
http://stackoverflow.com/questions/1...rawn-and-ready

Mais étant nouveau en dev android, j'avoue que je ne comprend pas tout. Et je ne suis pas sûr que ça s'applique à mon cas avec le trio contentProvider, cursorLoader et cursorAdapter...

Merci de votre aide !