Reputation: 281
Just updated the Android Studio into 1.4 and I found a NavigationDrawer template on there which is different from previous one. I want to call fragments by each drawer item select like gmail app. Under public boolean onNavigationItemSelected(MenuItem item) how I can call my different fragments?
Upvotes: 3
Views: 1472
Reputation: 42
Call the select Drawer Item method within your onNavigationItemSelected(MenuItem item).
For example,
private void selectDrawerItem(MenuItem menuItem) {
Fragment fragment = null;
Class fragmentClass;
switch (menuItem.getItemId()) {
case R.id.nav_first_fragment:
fragmentClass = FamilyGuyFragment.class;
break;
case R.id.nav_second_fragment:
fragmentClass = FuturamaFragment.class;
break;
case R.id.nav_third_fragment:
fragmentClass = SimpsonsFragment.class;
break;
default:
fragmentClass = SouthParkFragment.class;
}
try {
fragment = (Fragment) fragmentClass.newInstance();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.flContent, fragment).commit();
menuItem.setChecked(true);
setTitle(menuItem.getTitle());
mDrawer.closeDrawers();
}
https://github.com/codepath/android_guides/wiki/Fragment-Navigation-Drawer https://github.com/JGeovani/android-navigation-drawer-exercise
Upvotes: 1