Страницы

Поиск по вопросам

четверг, 16 мая 2019 г.

Настройка отображения элементов в RecyclerView через GridLayoutManager в строке

Необходимо настроить recyclerView таким образом, чтобы расположение элементов в каждой второй строке было по 2, а в нечётных строках по одному item'у.
Как сделать по два элемента во всех строках, т.е. 2 колонки, - это понятно:
GridLayoutManager layoutManager = new GridLayoutManager(this, 2); recyclerView.setLayoutManager(layoutManager);
а вот как сделать чередование - в одной два, а в другой один item? Я подозреваю, что это какой-то метод GridLayoutManager'a, но как и где его применять? В onCreateViewHolder'е?
Спасибо!


Ответ

Попробуй так:
GridLayoutManager layoutManager = new GridLayoutManager(context, 2, GridLayoutManager.VERTICAL, false); layoutManager.setSpanSizeLookup( new GridLayoutManager.SpanSizeLookup() { @Override public int getSpanSize(int position) { if((position % 3) == 0){ return 2; } else return 1; } }); recyclerView.setLayoutManager(layoutManager); recyclerView.setAdapter(adapter);

Комментариев нет:

Отправить комментарий