voglio impostare diversi layout di colonne per la riga, come mostrato nella figura sotto
Voglio questo tipo di layout attualmente sto ottenendo due immagini per l'utilizzo recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), 2));
su ogni riga, quindi, come posso raggiungere questo obiettivo.
Layout degli oggetti di RecycleView come
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<com.gordonwong.materialsheetfab.sample.SquareImageView
android:id="@+id/phone"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop" />
e nel mio file di classe impostare l'adattatore come
recyclerView = (RecyclerView) rootView.findViewById(R.id.recycler_view);
adapter = new GridViewAdapter(getActivity(), infoarraylist);
recyclerView.setAdapter(adapter);
recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), 2));
Collections.reverse(infoarraylist);
recyclerView.setItemAnimator(new DefaultItemAnimator());
risposte:
-1 per risposta № 1mLayoutManager = new GridLayoutManager(getActivity(), 2);
mLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
if (infoarraylist.get(position) instanceof YOUROBJECT) {
return 1;
} else if (infoarraylist.get(position) instanceof YOUROBJECT) {
return 2;
}
return -1;
}
});
recyclerView.setLayoutManager(mLayoutManager);
recyclerView.setAdapter(adapter);