Mam małe pytanie do mojej aplikacji na Androida. Szukałem przez długi czas, ale nie znalazłem nic o moim problemie.Android - Odwróć widok listy jako wyświetlanie wiadomości
Scenariusz: Muszę wyświetlić listę odtwarzania odwrócić (jako Facebook Messenger). A kiedy użytkownik przewinie do góry, załaduj więcej wiadomości.
Problem: Po wywołaniu przewijanie nie jest takie samo! Chcę zachować dokładnie taką samą pozycję jak przed załadowaniem.
Próbowałem ten kod:
// save index and top position
int index = list.getFirstVisiblePosition()+result.size();
View v = list.getChildAt(index);
int top = (v == null) ? 0 : v.getTop();
// ...
// restore
list.setSelectionFromTop(index, top);
Ale przewijania nie jest dokładnie samo po załadunku.
Masz pomysł?
Dzięki za pomoc. Nie rozumiem twojego postu. Jeśli znajduję się na pozycji nr 32, po tym, jak zostałem zmieniony, chcę ponownie znaleźć się na pozycji nr 32! Ale teraz, kiedy ta metoda jest wywoływana, nie jestem na tym przedmiocie ... –
Ta odpowiedź jest myląca. 'stackFromBottom' przesuwa (układa) obiekty na dół, nie tworzy kolejności odwrotnej. Obiekty są nadal dodawane od dołu, co nie jest wymagane przez @FlorianMacLanglade (szukam również tego samego rozwiązania). – Diolor
@Diolor ma rację. 'stackfromBottom' to tylko część tego, co chcesz. Druga część to kolejność odwrotna, na którą odpowiedziano: http://stackoverflow.com/questions/10941317/inverted-listview-in-android – Chris