sto porting mio adattatore in RecyclerView.Adapter
RecyclerView notifyItemInserted IllegalStateException
quello che voglio ottenere: quando l'utente scorre verso il basso vicino alla fine voglio iniziare recuperare i dati, voglio anche aggiungere i Progressbar vista a la fine di far sapere all'utente che altri dati stanno arrivando.
il modo in cui ho implementato questo nel mio BaseAdapter: sul getView
nella vista richiesto nel verso la fine, vorrei iniziare il recupero più dati, chiamare notifyDataSetChanged (per ottenere la vista ProgressBar per visualizzare) e solo poi tornare la vista necessario per getView
.
quello che ho provato a fare in RecyclerView.Adapter: ho provato a fare la stessa cosa in fondo, questa volta nel metodo onBindViewHolder
,
ma se provo e chiamo notifyItemInserted
all'interno di questo metodo ottengo la seguente eccezione :
IllegalStateException: Cannot call this method while RecyclerView is computing a layout or scrolling
quello che ho provato: Ho notato che onBindViewHolder
viene chiamato da onLayoutChildren
da LayoutManager
, ho provato l'override di esso e chiamando notifyItemInserted
dopo il suo super
ma ho ottenuto la stessa eccezione
come posso raggiungere il mio obiettivo?
uso LinearLayoutManager per questo lavoro – pskink
si potrebbe scrivere un esempio ?, non ho potuto fare questo senza ottenere questa eccezione – user1333057
di override onScrollStateChanged, qui usa findLastVisibleItemPosition per verificare di essere nella parte inferiore e aggiornare il tuo adapter – pskink