Android: how to implement grid with different columns/rows size -
i need implement this:
seems staggeredgridlayoutmanager | gridlayoutmanager can not it, how achieve now?
gridview has performance?
you can achieve kind of recyclerview behavior twoway-view
i tested 1.0.0-snapshot version of lib.
it's kind of old project (not maintened anymore), can write own recyclerview/layoutmanager.
example of layout
in recyclerviewadapter need set span logic:
@override public void onbindviewholder(recyclerview.viewholder holder, int position) { super.onbindviewholder(holder, position); final spannablegridlayoutmanager.layoutparams lp = (spannablegridlayoutmanager.layoutparams) holder.itemview.getlayoutparams(); final int span1; final int span2; if (position == 0) { span1 = 2; span2 = 2; } else if (position == 3) { span1 = 2; span2 = 3; } else { span1 = 1; span2 = 1; } final int colspan = (span2); final int rowspan = (span1); if (lp.rowspan != rowspan || lp.colspan != colspan) { lp.rowspan = rowspan; lp.colspan = colspan; holder.itemview.setlayoutparams(lp); } }
i used custom recyclerview library (twowayview):
<org.lucasr.twowayview.widget.twowayview android:id="@+id/fragment_drawer_list" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginbottom="60dp" android:cliptopadding="false" android:paddingbottom="32dp" app:twowayview_layoutmanager="spannablegridlayoutmanager" app:twowayview_numcolumns="3" app:twowayview_numrows="3" />
Comments
Post a Comment