Совместное использование NavigationView со всеми мероприятиями?

Как мы разделяем Drawer со всеми видами деятельности?

В onNavigationItemSelected : onNavigationItemSelected из setNavigationItemSelectedListener мы можем получить id и перейти к нему. Я ищу что-то вроде этого:

 private void initDrawerLayout() { drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); NavigationView navView = (NavigationView) findViewById(R.id.navigation_view); navView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { Intent intent; int id = menuItem.getItemId(); switch(id) { case R.id.home: case R.id.drawer_home: // call activity instead of adding/replacing fragment return true; case R.id.drawer_gallery: // call activity instead of adding/replacing fragment intent = new Intent(MainActivity.this, GalleryActivity.class); startActivity(intent); return true; case R.id.drawer_about: // call activity instead of adding/replacing fragment intent = new Intent(MainActivity.this, AboutActivity.class); startActivity(intent); return true; ... } ... 

Я знаю, что могу сделать все menuItems add / replace Fragment , но тогда обработка фрагментов и управление памятью – большая боль.

Вместо этого я хочу, чтобы каждый menuItem / клик для вызова Activity . Т.е. каждый MainMenuItem имеет Activity и те будут содержать фрагменты со сложными макетами.

Все, что я хочу сделать, – это каждый элемент главного меню, а не Fragment .

И все эти действия могут делиться одним и DrawerNavigation же DrawerNavigation .

Это рекомендуемый способ? Или мы всегда добавляем Fragments для щелчков элемента NavigationDrawer ?

Должен ли я добавлять NavigationView в BaseActivity а затем расширять все действия оттуда?

Следуя этому новому руководству о поддержке Design lib

Solutions Collecting From Web of "Совместное использование NavigationView со всеми мероприятиями?"

Я нашел ответ, используя этот ответ SO

Расширение – это правильный путь. Просто верните setContentView в правильном направлении …

Я тоже немного смущен. Получив очень мало информации об этом, я попытался расширить свой подкласс

 public class NewActivity extends MainActivity{ ... } 

Однако это само по себе ничего не делало. MainActivity имеет полностью функционирующее NavigationView которое будет перемещаться по каждому виду деятельности. MainActivity только поделиться им с каждым видом деятельности.