Android: прокрутите до нижней части представления

1

У меня есть ListView, содержащий некоторые пользовательские представления, а в конце моего списка - FooterView, содержащий кнопку.

Когда я нажимаю кнопку, она добавляет представление в конец моего ListView. Но курсор полосы прокрутки остается в своем положении.

Теперь я хочу автоматически прокрутить до конца списка (чтобы пользователь мог видеть новый элемент).

Есть ли у вас какие-либо идеи о том, как я могу это сделать?

Теги:
view
scroll
android-layout
listview

3 ответа

2
Лучший ответ

Я думаю, вы найдете здесь счастье здесь

  • 0
    К сожалению, он использует ScrollView, и после некоторых исследований в Google я обнаружил, что существует нерешенная проблема с использованием ListView внутри ScrollView (ListView отключается). В любом случае, спасибо :)
  • 1
    Нет необходимости добавлять ListView в ScrollView, вы можете просто использовать ScrollView :) и добавить к нему ваши представления :), а затем вы можете автоматически прокрутить ScrollView к добавленному представлению при нажатии кнопки добавления :)
Показать ещё 2 комментария
2

ListView имеет метод только для этого: smoothScrollToPosition

После того, как вы добавили новый элемент, просто вычислите длину списка и передайте это (помня о нулевой индексации) указанному выше методу

  • 0
    Я не заметил этот метод. Проблема в том, что он был добавлен начиная с Android 2.2, и я разрабатываю на устройстве Android 2.1 :(. Я должен рассмотреть вопрос об обновлении моего телефона до Android 2.2 (или 2.3) в ближайшее время ^^. В любом случае, спасибо :)
  • 0
    Вы нашли ответ для pre2.2?
0

Попробуйте это... он решит вашу проблему, я попробовал, и он отлично работает.

listView.post(new Runnable(){
    public void run() {
    listView.setSelection(listView.getCount() - 1);
}});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню