且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在主片段点击按钮打开抽屉式导航栏?

更新时间:2023-01-10 14:28:02

如果您需要打开滑盖:

mDrawerLayout.openDrawer(Gravity.LEFT); //Edit Gravity.End need API 14

如果您需要在合上滑盖

mDrawerLayout.closeDrawer(Gravity.LEFT); //Edit Gravity.End need API 14

示例

我mDrawerLayout这里实例化:

my mDrawerLayout is instanced here:

mDrawerLayout = (DrawerLayout)findViewById(R.id.my_drawer_layout);

我的滑动状态:

mSlideState=false;

如果您需要了解滑菜单状态(关闭,打开)。使用此code:

if you need to know the slide menu state (closed, opened). Use this code:

mDrawerLayout.setDrawerListener(new ActionBarDrawerToggle(this, 
    mDrawerLayout, 
    R.drawable.ic_menu_slide,
    0,
    0){
@Override
public void onDrawerClosed(View drawerView) {                       
    super.onDrawerClosed(drawerView);
    mSlideState=false;//is Closed
}
@Override
public void onDrawerOpened(View drawerView) {                       
    super.onDrawerOpened(drawerView);
    mSlideState=true;//is Opened
}});

最后。您可以使用Click事件是这样的:

finally. You can use your click event like this:

public void clickEventSlide(){
if(mSlideState){                
    mDrawerLayout.closeDrawer(Gravity.END);
}else{              
    mDrawerLayout.openDrawer(Gravity.END);
}}

在我的情况我的幻灯片菜单是在正确的(Gravity.END),但如果您需要在左边,试图用Gravity.START

in my case my slide menu is at the right (Gravity.END), but if you need on the left, try with Gravity.START

这对我的工作,我希望解决你的问题。

This work for me, I hope solved your problem.