Tell me please, how in this code can I remove an extra item?
private void onItemClickListerner(int position, View view) { Intent intent = null; switch (position) { case AppConstants.MENU_1: intent = new Intent(mContext, SettingsActivity.class); startActivity(intent); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_2: doCall(); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_3: sendEmail(); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_4: shareClicked(getString(R.string.share_subject), AndroidWebsiteApplication.getAppUrl()); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_5: intent = new Intent(mContext, ContactUsActivity.class); startActivity(intent); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_6: intent = new Intent(mContext, AboutActivity.class); startActivity(intent); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_7: intent = new Intent(mContext, AboutActivity.class); startActivity(intent); mDrawerLayout.closeDrawers(); break; case AppConstants.MENU_8: showCustomDialog(getString(R.string.confirmation), getString(R.string.exit_msg), getString(R.string.yes), getString(R.string.no), false); mDrawerLayout.closeDrawers(); break; } For a simple removal, the application crashes. I'm trying to remove the 6th item. So written in AppConstant.java
// Sliding option menu public static final int MENU_1 = 0; public static final int MENU_2 = 1; public static final int MENU_3 = 2; public static final int MENU_4 = 3; public static final int MENU_5 = 4; public static final int MENU_6 = 5; public static final int MENU_7 = 6; public static final int MENU_8 = 7; And so in XML
<string-array name="nav_drawer_items"> <item>Настройки</item> <item>Позвонить</item> <item>Письмо</item> <item>Поделиться</item> <item>Фотоальбом</item> <item>Карта</item> <item>Выход</item> </string-array> If, for example, I remove the line in the first passage of the code, then the whole menu is shifted by 1 position and for example, instead of the card, there will be an exit
Call
/** * Method to show toolbar and drawer layout */ private void showToolbar() { mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mDrawerList = (ListView) findViewById(R.id.list_slidermenu); mToolbar = (Toolbar) findViewById(R.id.toolbar); if (mToolbar != null) { setSupportActionBar(mToolbar); } mToolbar.setTitleTextAppearance(mContext, R.style.TitleTextStyle); mDrawerToggle = new ActionBarDrawerToggle(HomeActivity.this, mDrawerLayout, mToolbar, R.string.app_name, R.string.app_name); mDrawerLayout.setDrawerListener(mDrawerToggle); mNavMenuTitles = getResources() .getStringArray(R.array.nav_drawer_items); mNavMenuIcons = getResources().obtainTypedArray( R.array.nav_drawer_icons); mNavDrawerItems = new ArrayList<NavDrawerItem>(); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[0], mNavMenuIcons .getResourceId(0, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[1], mNavMenuIcons .getResourceId(1, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[2], mNavMenuIcons .getResourceId(2, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[3], mNavMenuIcons .getResourceId(3, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[4], mNavMenuIcons .getResourceId(4, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[5], mNavMenuIcons .getResourceId(5, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[6], mNavMenuIcons .getResourceId(6, -1))); mNavDrawerItems.add(new NavDrawerItem(mNavMenuTitles[7], mNavMenuIcons .getResourceId(7, -1))); mNavMenuIcons.recycle(); mDrawerList.setOnItemClickListener(new SlideMenuClickListener()); mMenuAdapter = new MenuAdapter(HomeActivity.this); mMenuAdapter.setList(mNavDrawerItems); mDrawerList.setAdapter(mMenuAdapter); } /** * Slide menu item click listener * */ private class SlideMenuClickListener implements ListView.OnItemClickListener { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { onItemClickListerner(position, view); } }
NavigationDrawer, then simply create a new activity from the studio with such a template and see how it is implemented there. - eugeneek