如何以编程方式显示/隐藏导航抽屉

如何使用按钮显示/隐藏导航抽屉,我已使用此 SO链接来创建和管理导航抽屉。

现在我正在使用(从左侧向右滑动 – 显示)和(从右向左滑动 – 隐藏)

如何使用下面屏幕截图中突出显示的按钮显示/隐藏抽屉:

在此处输入图像描述

header_home.xml:

   

编辑:

  btnMenu.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub drawer.openDrawer(Gravity.LEFT); } }); 

我知道要关闭我必须调用drawer.closeDrawer(Gravity.LEFT); 但我必须放置此代码?

获取对DrawerLayout的引用并调用closeDrawer(int)来关闭它,并调用openDrawer(int)来打开它。 int参数指的是引力。 在你的情况下它应该是Gravity.LEFT / Gravity.START ,因为相应于你发布的截图,你的DrawerLayout在左边打开和关闭

关闭抽屉:

 drawer.CloseDrawer((int)GravityFlags.Left); 

打开抽屉:

 drawer.OpenDrawer((int)GravityFlags.Left); 

如果您正在使用滑动抽屉菜单,并且想要在打开菜单时(从右向左拖动)隐藏菜单。 然后我们必须处理listview对象ontouch监听器。 代码将是这样的。

  //((( When we drage from Right to left then menu hide )))) lvMenu.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: toggleMenu(v); break; case MotionEvent.ACTION_UP: //showtoast("up"); break; default: return false; } return false; } }); public void toggleMenu(View v) { mLayout.toggleMenu(); } 

如果您有任何问题,可以在此处填写评论