État du fragment de tiroir de navigation Android

Je suis actuellement en utilisant la Navigation de Tiroir pour mon APPLICATION Android. Dans mon premier fragment, j'ai un fragment de chargement de données à l'aide de Facebook de l'API Graphique. Ainsi, lorsque mon Application est chargée pour la première fois, il va d'abord pour le premier fragment.

État du fragment de tiroir de navigation Android

Puis-je utiliser le Tiroir de Navigation, cliquez sur un autre Fragment et de l'afficher.

État du fragment de tiroir de navigation Android

Et puis finalement, je réutiliser le Tiroir de Navigation à procéder vers le premier Fragment et de l'afficher.

État du fragment de tiroir de navigation Android

Ma question que je me pose est, comment dois-je procéder pour utiliser le Fragment qui a été créé qu'une seule fois, au lieu de recréer à chaque fois que la Navigation de Tiroir de l'Élément sélectionné. Mon code pour la commutation des fragments sont comme indiqué ci-dessous.

private void displayView(int position) {
    //update the main content by replacing fragments
    Fragment fragment = null;
    switch (position) {
    case 0:
        fragment = new SelectionFragment();
        break;
    case 1:
        fragment = new HomeFragment();
        break;
    case 2:
        fragment = new PhotosFragment();
        break;
    case 3:
        fragment = new CommunityFragment();
        break;
    case 4:
        fragment = new PagesFragment();
        break;
    case 5:
        fragment = new SplashFragment();
        break;
    default:
        break;
    }

    if (fragment != null) {
        FragmentManager fragmentManager = getSupportFragmentManager();
        fragmentManager.beginTransaction()
                .replace(R.id.frame_container, fragment).commit();

        //update selected item and title, then close the drawer
        mDrawerList.setItemChecked(position, true);
        mDrawerList.setSelection(position);
        setTitle(navMenuTitles[position]);
        mDrawerLayout.closeDrawer(mDrawerList);
    } else {
        //error in creating fragment
        Log.e("MainActivity", "Error in creating fragment");
    }
}

J'ai remarqué qu'il y a en effet une "nouvelle" instance du Fragment, chaque fois chaque fois que l'option est sélectionnée. Comment puis-je faire au sujet de la mise en œuvre de la logique de la création du Fragment instance une FOIS et en les réutilisant, de sorte que je n'ai pas continuellement charger le Fragment, encore et encore.

source d'informationauteur Arvind Dinivra