Cambiar fragmento con el cajón de navegación de Android Studio predeterminado

Estoy un poco perdido con la implementación del cajón de navegación en Android Studio. El método onCreate llama a la clase PlaceholderFragment que no entiendo realmente para qué sirve.

Pero de todos modos, ¿dónde debo implementar mi onItemClickListener para mostrar diferentes fragments acuerdo con el elemento seleccionado en el cajón de navegación?

Este es mi actual PlaceholderFragment:

 public static class PlaceholderFragment extends Fragment { private ListView listView; private CustomAdapter expenseAdapter; public PlaceholderFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_main, container, false); expenseAdapter = new CustomAdapter(getActivity()); listView = (ListView) rootView.findViewById(R.id.lvExpense); listView.setAdapter(expenseAdapter); expenseAdapter.loadObjects(); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) { String expense = expenseAdapter.getItem(position).get("title").toString(); Toast.makeText(getActivity(), expense, Toast.LENGTH_SHORT).show(); } }); return rootView; } } 

PS: el onItemClickListener en la clase es para otro ListView que no es el del cajón de navegación. Básicamente estoy usando parse.com y poblar un ListView con los elementos de la base de datos.

Gracias.

EDIT: Estoy finalmente utilizando este código dentro onNavigationDrawerItemSelected :

 Fragment fragment = null; switch (position) { case 0: fragment = new HomeFragment(); break; case 1: fragment = new SearchFragment(); break; default: break; } if (fragment != null) { FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction() .replace(R.id.container, fragment).commit(); } 

En fragment = new HomeFragment(); , android studio me dicen que el android.support.v4.app.fragment es necesario. Porqué es eso ?

(En caso de que no lo hagas): En AndroidStudio, es mejor generar una muestra de actividad con el cajón de navegación (Alt + Insertar -> Actividad -> Actividad de cajón de navegación (en Android Studio 0.8. +)) hosts NavigationDrawerFragment con algunos drawables.

En NavigationDrawerFragment onCreateView rellena los elementos de la lista que desea que aparezcan en el cajón, y la actividad implementará automáticamente la interfaz NavigationDrawerFragment.NavigationDrawerCallbacks con el método onNavigationDrawerItemSelected(int position) . Este método se llama cuando hace clic en el elemento en determinada posición en el cajón de navegación y, en este método, reemplaza a R.id.container con el fragmento que necesita en esa posición.

No tiene que utilizar PlaceholderFragment , es el simulacro que se mostrará en la primera vez, antes de implementar su propio. Siéntase libre de eliminarlo y crear cualquier fragmento que desee.

Y OnItemClickListener ya está implementado en el método onCreateView de NavigationDrawerFragment.

El fragmento de espacio reservado es justo eso. Se trata de un fragmento en blanco que se utiliza en el código generado automáticamente para mostrarle cómo utilizar el cajón de navegación. Puede utilizar cualquier fragmento con el cajón de navegación.

Puede mostrar un fragmento cuando se selecciona un elemento en onNavigationDrawerItemSeleced (posición int) que se encuentra en la actividad que implementa NavigationDrawerFragment. Puede utilizar un FragmentManager para intercambiar el fragmento antiguo con el nuevo.

  • Prueba de interfaz de usuario de Robotium para la aplicación con el cajón de navegación
  • ¿Cómo utilizo DrawerLayout para mostrar sobre la Barra de Acción / Barra de herramientas y debajo de la barra de estado?
  • Los datos del fragmento se van nulos cuando otro fragmento se carga
  • FragmentManager.beginTransaction () no se puede aplicar a (int, android.app.fragment)
  • Adaptar chrisbanes ActionBar-PullToRefresh a fragmentos (NavigationDrawer)
  • InflateException en la llamada al método inflater.inflate ()
  • ¿Cómo puedo hacer que DrawerLayout se muestre debajo de la barra de herramientas?
  • Android: ¿Es mejor crear un nuevo fragmento cada vez que se hace clic en un elemento del cajón de navegación o cargar fragmentos creados anteriormente?
  • NavigationDrawer con Actividades vs. NavigationDrawer con Fragments
  • Cajón de navegación con la actividad y el niño Fragmentos
  • ¿Cómo añado iconos a la plantilla de gavetas de navegación de Android Studio?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.