Загружаю данные в фрагмент с помощью AsyncTaskLoader + EndlessRecyclerViewScrollListener. Имею такой загрузщик:
public static abstract class MovieLoader extends AsyncTaskLoader<List<Movie>> {
protected abstract List<Movie> getMovie();
private List<Movie> mCachedMovies;
public MovieLoader(Context context) {
super(context);
}
@Override
public void onStartLoading(){
if (mCachedMovies != null){
deliverResult(mCachedMovies);
}
if (mCachedMovies == null || takeContentChanged()){
forceLoad();
}
}
@Override
public void deliverResult(List<Movie> moviesResponse){
if (isReset()){
return;
}
mCachedMovies = moviesResponse;
if (isStarted()){
super.deliverResult(mCachedMovies);
}
}
@Override
protected void onReset(){
onStopLoading();
if (mCachedMovies != null){
mCachedMovies = null;
}
}
@Override
public List<Movie> loadInBackground() {
return getMovie();
}
}
Так загружаю полученый результат в Adapter:
private void bindMovies(List<Movie> movies){
mMovieList.addAll(movies);
notifyDataSetChanged();
hideProgress();
}
В результате при повороте екрана получаю только последнюю подгруженую информацию. А также при переходах между фрагментами(Использую FragmentStatePagerAdapter) записи начинают дублироваться.
Как можно "аккумулировать" информацию в загрузщике?
Как избежать дублирования информации с помощью загрузщика?
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости