ell (p> ell All (p> ell Tipes. FirstItem , seconditem и thirditem ). FirstItem и ThirdItem должны быть организованы один выше другого, а второй сайт должен сосредоточиться вертикально с двумя другими. Ниже приведен мой подход, чтобы попытаться соответствовать этому ожидаемому поведению: < /p>
Код: Выделить всё
GridLayoutManager gridLayoutManager = new GridLayoutManager(getContext(), 3, GridLayoutManager.HORIZONTAL, false);
gridLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
if (mAdapter.getItemViewType(position) == MyAdapter.SECOND_ITEM) {
return 1;
}
return 2;
}
< /code>
Мои элементы добавляются в адаптер в следующем порядке: < /p>
mItems.clear();
mItems.add(Item.getFirstItem());
mItems.add(Item.getSecondItem());
mItems.add(Item.getThirdItem());
notifyDataSetChanged();
< /code>
Кроме того, три макеты похожи, изменяя только фон, чтобы увидеть результат: < /p>
[list]
[*]first_item.xml[/list]
Код: Выделить всё
< /code>
[list]
[*]second_item.xmlКод: Выделить всё
. хотеть. Я пробовал разные пропорции для предметов, но это тоже не сработало. Учитывая мой ограниченный сценарий, Кто -нибудь знает, как достичь прототипа этого элемента? Мне было только интересно использовать его в качестве менеджера макета.
Подробнее здесь: https://stackoverflow.com/questions/796 ... sizelookup
Мобильная версия