Android listview, показать пользовательский конец списка, а затем автоматически прокрутить вверх - PullRequest
2 голосов
/ 25 июня 2011

У меня есть Listviews в макетах, и я хочу, чтобы пользователь знал, что есть больше ячеек для просмотра, и для прокрутки.В списках нет полосы прокрутки, видимой по умолчанию.

Одно из предложений, которое я получил, состояло в том, чтобы начать отображать список с его конца, а затем автоматически прокрутить вверх до самого верха.Это покажет пользователю, что есть что прокручивать.

Как это будет сделано на Android?

1 Ответ

9 голосов
/ 25 июня 2011

Вы можете использовать функции, которые являются частью класса ListView:

smoothScrollByOffset(int offset);

или

smoothScrollToPosition(int position);

Или, если вы хотите прокрутить одну за другой, вы можете использовать такие функции, как:

private void scrollToNext() {
int currentPosition = getListView().getFirstVisiblePosition();
if (currentPosition == getListView().getCount() - 1)
    return;
getListView().setSelection(currentPosition + 1);
getListView().clearFocus();
}

private void scrollToPrevious() {
int currentPosition = getListView().getFirstVisiblePosition();
if (currentPosition == 0)
    return;
getListView().setSelection(currentPosition - 1);
getListView().clearFocus();
}
...