Inversé ListView dans Android?
Est-il un moyen facile d'afficher une liste dans l'ordre inverse? Je suis en train de créer une conversation basée sur l'app, et voudrais les entrées les plus récentes pour être au bas de la liste. Je suis conscient de transcriptMode et stackFromBottom, cependant mon problème est que l'ordre des données.
Dire que j'ai 100 conversation articles, et que vous voulez afficher les articles 80 à 100, 100 étant la conversation la plus récente de l'élément. Je voudrais montrer 80-100, ce qui implique un ORDER BY id desc LIMIT 20 dans ma requête, ce qui oblige les éléments doivent être triés 100 à 80, à l'opposé de ce dont j'ai besoin. J'ai actuellement une méchante intérieure code de requête, mais se sentir comme il devrait y avoir une solution plus simple basée sur l'inversion du curseur ou tout simplement pour inverser la ListView.
Cursor
qui est retourné et puis créer un MatrixCursor
de la matrice et les utiliser pour l' ListView
. Voir developer.android.com/reference/android/database/...OriginalL'auteur bjdodson | 2012-06-07
Vous devez vous connecter pour publier un commentaire.
à l'intérieur de la
baseAdapter
, pour lagetView()
méthode , au lieu d'obtenir de l'élément dans les données de l'indice de "position" , utilisez le contraire , sens : numberOfItems moins la position .comme pour montrer le nombre d'éléments , qui est aussi à l'intérieur de la baseAdapter : définir la valeur retournée par
getCount()
à être celui que vous souhaitez qu'il soit (20 dans votre exemple,si 80-100 implique qu'il doit être à 21 ) .btw, il semble que vous êtes un démarreur dans le cas de la listView . je vous propose de regarder cette vidéo:
http://www.youtube.com/watch?v=wDBM6wVEO70
également vérifier l'api-demos fournis par le sdk manager . ils ont beaucoup de bons exemples.
OriginalL'auteur android developer
Utiliser cette getItem Méthode à l'intérieur de votre Adaptateur pour l'ordre inverse:
Je ne comprends pas votre problème ici? Vous avez besoin de la Remplacer annotation..
Mais il affiche un message que @Override n'est pas autorisé ici. Je suis en train de substituer à l'intérieur de méthode onCreate
De ne pas fonctionner correctement
OriginalL'auteur Kai Burghardt
Ce code est travaillé pour moi lors de l'extraction de données à partir de la base de données.
OriginalL'auteur SKR
Requête pour des enregistrements à l'aide ENTRE mot-clé semble être la solution la plus simple pour moi.
OriginalL'auteur Barak