Sto tentando di ricreare la logica ListView
(e AbsListView
), con vista riciclaggio. Ho bisogno di questo, ma possiamo dire che è solo per capire la logica di Android.Solo relayout bambini e non tutti gli alberi
Supponiamo che i miei articoli figli siano gli stessi (stesso layout), usando l'altezza fissa RelativeLayout
.
Durante lo scorrimento, sto riutilizzando la vista dei bambini fantasma e impostato le proprietà per l'elemento corrente. Sta funzionando bene, dal momento che sto usando View.offsetTopAndBottom()
e invalidate()
invece di richiedere il layout durante lo scorrimento per l'ottimizzazione.
Il mio problema è l'aggiornamento dei bambini (RelativeLayout
).
A seconda dell'articolo, voglio nascondere o mostrare ImageView
su questo articolo. Per questo, sto usando solo iconImage.setVisibility(GONE)
e iconImage.setVisibility(VISIBLE)
.
Poiché sto bloccando requestLayout
, sembra che setVisibility()
non funzioni correttamente.
Se utilizzo requestLayout
, tutto l'albero misurerà e si imposterà da solo e non è un buon modo per un'esperienza utente a scorrimento.
Esiste un modo per il layout della richiesta solo per l'elemento figlio di riciclo?