Обходные пути для GridView.scrollTo ()?

Как уже упоминалось, Android GridView.scrollTo () не работает. Метод, упомянутый в решении, setSelectedPosition , похоже, не существует в GridView

smoothScrollToPosition работает, но я действительно не хочу анимации.

Для контекста у меня есть GridView CursorAdapter -backed, и я хочу, чтобы представление «перезагрузилось», т.е. прокручивание вверх, когда я меняю курсор.

Я использовал setSelection(int position) для этого, и, похоже, он работает нормально. Чтобы прокрутить вверх, просто используйте 0 для позиции.

Из документов:

Если в сенсорном режиме элемент не будет выбран, он будет по-прежнему размещаться соответствующим образом.

Изменить: Добавлен код для публикации setSelection как Runnable:

 albumsView.post(new Runnable() { @Override public void run() { albumsView.setSelection(0); } }); 

Я обнаружил, что для надежного использования gridView.setSelection (index) я должен сначала вызвать gridView.setAdapter () (даже если адаптер уже установлен и не изменился). Вот так:

 gridView.setAdapter(gridAdapter); gridView.setSelection(index); 
Intereting Posts