Masquer la barre de Navigation de Tiroir de l'Élément de Menu - Android

J'ai un tiroir de navigation. Lorsqu'un événement est appelé, je veux cacher un de mes élément de menu de navigation pour l'utilisateur. Comment puis-je le faire?

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sliding_menu);
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
mTitle = mDrawerTitle = getTitle();
//load slide menu items
navMenuTitles = getResources().getStringArray(R.array.nav_drawer_items);
//nav drawer icons from resources
navMenuIcons = getResources()
.obtainTypedArray(R.array.nav_drawer_icons);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout1);
mDrawerList = (ListView) findViewById(R.id.list_slidermenu1);
navDrawerItems = new ArrayList<NavDrawerItem>();
//adding nav drawer items to array
//Home
navDrawerItems.add(new NavDrawerItem(navMenuTitles[0], navMenuIcons.getResourceId(0, -1)));
//Profil
navDrawerItems.add(new NavDrawerItem(navMenuTitles[1], navMenuIcons.getResourceId(1, -1)));
//Prospek
navDrawerItems.add(new NavDrawerItem(navMenuTitles[2], navMenuIcons.getResourceId(2, -1)));
//Announcement
navDrawerItems.add(new NavDrawerItem(navMenuTitles[3], navMenuIcons.getResourceId(3, -1), true,
cariTotal("http://192.168.0.23/api/android/announcement/").toString()));
//Logout
navDrawerItems.add(new NavDrawerItem(navMenuTitles[4], navMenuIcons.getResourceId(4, -1)));
//Recycle the typed array
navMenuIcons.recycle();
//set event
mDrawerList.setOnItemClickListener(new SlideMenuClickListener());
//setting the nav drawer list adapter
adapter = new NavDrawerListAdapter(getApplicationContext(),
navDrawerItems);
mDrawerList.setAdapter(adapter);
//enabling action bar app icon and behaving it as toggle button
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,
R.string.app_name,
R.string.app_name
){
public void onDrawerClosed(View view) {
getSupportActionBar().setTitle(mTitle);
//calling onPrepareOptionsMenu() to show action bar icons
invalidateOptionsMenu();
}
public void onDrawerOpened(View drawerView) {
getSupportActionBar().setTitle(mDrawerTitle);
//mDrawerList.bringToFront();
//mDrawerLayout.requestLayout();
//calling onPrepareOptionsMenu() to hide action bar icons
invalidateOptionsMenu();
}
};
mDrawerLayout.setDrawerListener(mDrawerToggle);
if (savedInstanceState == null) {
//on first time display view for first nav item
displayView(0);
}
}
private void displayView(int position) {
//update the main content by replacing fragments
android.app.Fragment fragment = null;
switch (position) {
case 0:
fragment = new HomeFragment();
break;
case 1:
fragment = new ProfilFragment();
break;
case 2:
fragment = new ProspekFragment();
break;
case 3:
fragment = new AnnouncementFragment();
break;
case 4:
Logout();
break;
default:
break;
}
if (fragment != null) {
android.app.FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.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("SlidingMenu", "Error in creating fragment");
}
}

Je veux cacher ma navigation tiroir de l'élément de menu à l'index 2. Comment faire?

Mise à JOUR
J'ai 5 éléments de menu dans mon tiroir de navigation, je veux cacher un d'eux lors de certains événements est appelé.

  • Voulez-vous dire supprimer le deuxième élément dans la vue de liste de DrawerLayout?
  • non, juste le cacher. parce que je veux montrer à nouveau plus tard
InformationsquelleAutor huzain07 | 2015-08-12