Esiste un modo per ridisegnare tutti gli elementi di RecyclerView
?Forza RecyclerView per ridisegnare Android
Ho alcuni temi (in style.xml) e dopo aver modificato il tema, ho bisogno di ridisegnare lo RecyclerView
.
Quindi voglio un metodo che costringerà a richiamare onCreateViewHolder
per ogni elemento della scheda.
ho cercato di:
- chiamata
adapter.notifyDataSetChanged
maonCreateViewHolder
non si chiama - chiamata
recyclerView.setVisibility(View.GONE)
e poirecyclerView.setVisibility(View.VISIBLE)
- chiamata
recyclerView.invalidate()
- chiamata
recyclerView.setAdapter(null)
e poirecyclerView.setAdapter(adapter)
.
Funziona bene per il 90% degli articoli. Solo il 90% degli articoli otterrà il nuovo stile, ma alcuni articoli avranno il vecchio stile
Ho detto che lo RecyclerView
è collegato a un'attività, non a un frammento.
Assicurati di chiamare notifyDataSetChanged() dal thread dell'interfaccia utente, dovrebbe funzionare. – Nanoc
@Nanoc notifyDataSetChanged force only onBindNewHolder, non onCreate –
Spiacente, non ho familiarizzato con lo schema viewHolder, ma dirò che è necessario adattare il codice per lavorare con esso (o non usarlo). – Nanoc