YanixX
@YanixX
я просто студент, который хочет стать человеком

Почему при сворачивании/разворачивании приложения каждый раз добавляется fragment?

Есть Fragment реализующий интерфейс LoaderManager.LoaderCallbacks<>. В методе onLoadFinished во Fragment добавляется TextView. Если свернуть приложение, а потом развернуть то добавиться такое же TextView. Таким образом если сворачивать и разворачивать приложение получим много TetxView, а надо только одно. Как добиться нужного результата?

public class SelectedListFragment extends Fragment implements LoaderManager.LoaderCallbacks<List<SomeList>> {

    private LinearLayout linearLayout;

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        getLoaderManager().initLoader(R.id.some_list_loader, Bundle.EMPTY, this);

        linearLayout = (LinearLayout) getActivity().findViewById(R.id.selectedListFragment);
    }

    @Override
    public Loader<List<SomeList>> onCreateLoader(int id, Bundle args) {
        switch (id) {
            case R.id.some_list_loader:
                return new SomeListLoader(getContext());
            default:
                return null;
        }
    }

    @Override
    public void onLoadFinished(Loader<List<SomeList>> loader, List<SomeList> data) {
        int loaderId = loader.getId();
        if (R.id.some_list_loader == loaderId) {
            if (linearLayout != null) {
                linearLayout.setBackgroundColor(Color.BLUE);
                TextView textView = new TextView(getContext());
                textView.setText("Это текст-вью добавлено из кода, после загрузки данных !");
                linearLayout.addView(textView);
            }

        }
    }

    @Override
    public void onLoaderReset(Loader<List<SomeList>> loader) {
        Log.i(Tags.INFO, "loader: " + loader.getId() + "was reset !" );
    }
}
  • Вопрос задан
  • 233 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы