LayoutManager para RecyclerView Grid con diferente ancho de celda
StaggeredGridLayoutManager
no parece permitir personalizar unancho de celda o abarcar varias columnas (excepto el intervalo completo) para la orientación vertical.
¿Qué es un preferido?LayoutManager
para organizar las celdas como se muestra arriba?
PD Solo quiero saber cómo personalizarancho de celda y no altura conStaggeredGridLayoutManager
. Sé que la altura se puede personalizar como se implementa en estemuestra.
public class VerticalStaggeredGridFragment extends RecyclerFragment {
public static VerticalStaggeredGridFragment newInstance() {
VerticalStaggeredGridFragment fragment = new VerticalStaggeredGridFragment();
Bundle args = new Bundle();
fragment.setArguments(args);
return fragment;
}
@Override
protected RecyclerView.LayoutManager getLayoutManager() {
return new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL);
}
@Override
protected RecyclerView.ItemDecoration getItemDecoration() {
return new InsetDecoration(getActivity());
}
@Override
protected int getDefaultItemCount() {
return 100;
}
@Override
protected SimpleAdapter getAdapter() {
return new SimpleStaggeredAdapter();
}
}
Adaptador
public class SimpleStaggeredAdapter extends SimpleAdapter {
@Override
public void onBindViewHolder(VerticalItemHolder itemHolder, int position) {
super.onBindViewHolder(itemHolder, position);
final View itemView = itemHolder.itemView;
if (position % 4 == 0) {
int height = itemView.getContext().getResources()
.getDimensionPixelSize(R.dimen.card_staggered_height);
itemView.setMinimumHeight(height);
} else {
itemView.setMinimumHeight(0);
}
}
}
itemView.setMinimumWidth(customWidth)
no afecta el ancho de la celda.
Para simplificar, actualizo mi diseño de cuadrícula a
Cómo aumentar el ancho de la celda 0 en comparación con la celda 1 en unStaggeredGridLayoutManager
o cualquier otro administrador de diseño?