Плавная прокрутка до позиции без загрузки всех элементов каждый раз

Взгляните на ECMA 262, раздел 12.11 , второй алгоритм, 4.c.

c. Если входной сигнал равен clauseSelector, как определено оператором ===, тогда ...

blockquote>

2
задан blueware 31 March 2019 в 05:46
поделиться

1 ответ

Есть два пути. Одним из них является то, что вы можете сохранить заполненный вид рециркулятора даже после перехода к другим фрагментам. Вы можете сделать это, установив ограничение экрана за пределами ViewPager. Параметр Limit - это количество страниц, которые должны быть сохранены по обе стороны от текущей страницы в иерархии представлений в состоянии ожидания.

ViewPager.setOffscreenPageLimit(3) // in this case 3 fragments on either side of the current page will be retained.

Как вы сказали, это может занять много памяти.

Другим способом является размещение кода прокрутки в главном потоке, чтобы у вашего представления переработчика было достаточно времени для инициализации и заполнения элементов.

Выполните следующие действия после настройки данных в адаптере вида переработчика

recyclerView.post(new Runnable() {
    @Override
    public void run() {
        // Call your scrolling code  
        recyclerView.smoothScrollToPosition(adapter.getItemCount() - 1);                                 
    }
});
.
0
ответ дан Girish 31 March 2019 в 05:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: