Sto cercando di modificare il numero di colonne visualizzate nella vista del riciclatore (layout della griglia) in base alle dimensioni dello schermo. Tuttavia non sono riuscito a trovare un modo adeguato per raggiungerlo. Al momento sto utilizzando treeViewObserver
per modificare il numero di colonne in base alla modifica delle dimensioni dello schermo (durante l'orientamento). Quindi, se l'app si apre in modalità verticale, il numero di colonne (sul telefono) decide di esserlo, il che sembra buono, ma questo metodo non funziona quando l'app si apre direttamente in modalità orizzontale, dove una singola scheda streched nella griglia viene visualizzato sullo schermo.Modifica del numero di colonne in RecyclerView gridlayout
Qui recList è RecyclerView & glm è GridLayoutManager utilizzato in RecyclerView
viewWidth = recList.getMeasuredWidth();
cardViewWidthZZ = recList.getChildAt(0).getMeasuredWidth();
if (oldWidth == 0) {
oldWidth = cardViewWidthZZ;
}
if (oldWidth <= 0)
return;
int newSpanCount = (int) Math.floor(viewWidth/(oldWidth/1.3f));
if (newSpanCount <= 0)
newSpanCount = 1;
glm.setSpanCount(newSpanCount);
glm.requestLayout();
migliori saluti
Eri in grado di capire una soluzione per questo. – Shubham