Что я хотел бы достичь:
У меня есть два разных фрагмента. Я бы хотел, чтобы они оба отображали одни и те же данные в двух формах (в списке и на карте). Я хотел бы, чтобы они делили один загрузчик (в частности, AsyncTaskLoader
). Все работает отлично, но Loader не используется повторно. Создается другая, и данные загружаются дважды.
Что я делаю:
В Fragment
я использую LoaderManager lm = getActivity().getSupportLoaderManager();
В обоих из них я реализую LoaderCallbacks<ArrayList<Item>>
и необходимые методы.
В обоих случаях я использую lm.initLoader(0, args, this);
.
Но когда я вывожу lm.toString()
, кажется, что это два разных загрузчика. И данные загружаются дважды.
Как повторно подключиться к одному загрузчику из другого Activity/Fragment, чем тот, в котором он был запущен?
Это должно быть возможно, поскольку контекст привязан к загрузчику в любом случае на каждом onCreate()
, например. при изменении конфигурации.