Есть абстрактный класс фрагмента который будут наследовать другие фрагменты.Вести себя они будут все одинаково, кроме одного - они будут загружать разные данные.
public abstract class MovieFragment extends Fragment
implements LoaderManager.LoaderCallbacks<List<Movie>> {
protected abstract List<Movie> getMovies(int currentPage);
//реализация самого фрагмента
private static class MovieLoader extends AsyncTaskLoader<List<Movie>> {
public MovieLoader(Context context) {
super(context);
}
@Override
protected void onStartLoading() {
forceLoad();
}
@Override
protected void onStopLoading(){
cancelLoad();
}
@Override
public List<Movie> loadInBackground() {
return getMovies(3);
}
}
}
Пример класса который наследует MovieFragment:
public class PopularMovieFragment extends MovieFragment {
public static Fragment getInstance(){
return new PopularMovieFragment();
}
@Override
protected List<Movie> getMovies(int currentPage) {
return new MovieFetch().getPopularMovies();
}
}
пробовал так, но так как MovieLoader должен быть статичным то и использовать getMovies(int currentPage) становится не возможным. Посоветуйте как реализовать?
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости