Sto tentando di implementare un comportamento simile a ViewPager per un RecyclerView
orizzontale. I dati dall'adattatore dovrebbero gonfiarsi e legarsi normalmente, ma la navigazione attraverso Recycler
deve essere gestita in modo diverso. Quando l'utente fa scorrere (o tenta di scorrere), sposto lo Recycler
un elemento in quella direzione, incollandolo sul lato sinistro.Comportamento simile a cercapersone in RecyclerView
Ho già tutta la logica di transizione dell'articolo. Sto utilizzando un numero personalizzato LayoutManager
, che sostituisce onSmoothScrollToPosition()
con un valore personalizzato LinearSmoothScroller()
che fa rimanere l'elemento nella sinistra.
La domanda è: come posso ignorare il comportamento di scorrimento dello RecyclerView
per intercettare gli swip e gestirli da solo? Ho provato a disabilitare lo scorrimento nel LayoutManager
e quindi a intercettare il gesto in un onTouchListener
, ma questo non sembra funzionare. Il framework RecyclerView
ha un modo pulito per gestirlo?
Penso che intercettando il gesto in 'onTouchListener' dovrebbe già fare il trucco. Cosa non funziona su quella soluzione? – EpicPandaForce
Beh, non intercetta nulla per qualche motivo. Presumo che ciò possa essere causato dal fatto che il Recycler orizzontale si trova in una pagina di un pager più grande (Fragment Pager per sezioni dell'app) e passa semplicemente il gesto al cercapersone superiore :( – Kelevandos
@EpicPandaForce Sono riuscito a ottenerlo risulta che ho dovuto implementare onScroll() in SimpleGestureListener, non solo onFling(). Tuttavia, c'è un problema anche con questo: il metodo onScroll() si innesca più volte, con il Recycler che attraversa tutto articoli per gestirlo? – Kelevandos