Как запускать единственный экземпляр Activity из Fragment?

241
20 марта 2017, 07:50

Имеется класс Home extends Activity с NavigationDrawer в нём.
Через displayView создаю Fragment'ы в зависимости от нажатия элемента.

В одном из Fragment'ов в onСreate() я прописал:

getActivity().startActivity(new Intent(getActivity(), Home.class).putExtra("position", 2));

Как видно, после нажатия запускается Home. Но мне не нужен новый экземпляр — нужно, чтобы открылся существующий.

В данный момент у меня вот такое получается:

Что мне сделать? Мне только один экземпляр Home нужен.

Для rjhdby

private void displayView(int position) {
        Fragment fragment = null;
        switch (position) {
            case 0: fragment = new CabinetFragment(); break;
            case 1: fragment = new MyContractsFragment(); break;
            case 2: fragment = new WaitContractsFragment(); break;
            case 3: fragment = new MyRequestsFragment(); break;
            case 4: fragment = new ArchiveFragment(); break;
            case 5: fragment = new FavoriteFragment(); break;
            case 6: fragment = new PreWritesFragment(); break;
            case 7: fragment = new SearchProgramFragment(); break;
            case 8: fragment = new SelectOrganizationFragment(); break;
            default: break;
        }
        if (fragment != null) {
            FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
            fragmentTransaction.replace(R.id.container_body, fragment);
            fragmentTransaction.commit();
            // set the toolbar title
            if (getSupportActionBar() != null) {
                getSupportActionBar().setTitle(getResources().getStringArray(R.array.navTitle)[position]);
            }
        }
    }
READ ALSO
Не работает Toast [требует правки]

Не работает Toast [требует правки]

Пытаюсь программировать на АндроидЧасто использовал Тосты

350
Лента новостей в Android

Лента новостей в Android

Есть ли специальное событие у ScrollView, когда его полностью проматывают? Это нужно, чтобы новости подгружались постепенно, а не сразу

455
Переключение фильтра у текстуры в LibGdx

Переключение фильтра у текстуры в LibGdx

Есть текстура, на сцене она должна отрисовываться в двух вариантах одновременно: пиксельной (Без MipMap) и размытойТекстура:

233
Как заново сериализовать объект

Как заново сериализовать объект

Вот небольшой пример кода, сильно упрощённый:

237