我做了一个双抽屉布局,没有像这样的动作栏:
Using Navigation Drawer without TitleBar or ActionBar
我的要求是当左侧的抽屉打开时,禁用右侧的抽屉.反之亦然.因此,当左抽屉打开时,我正在隐藏右抽屉按钮.反之亦然,这很好.
但问题是,即使我隐藏了一个按钮(左或右),抽屉仍然打开水平滑动(从右向左滑动).那么如何防止抽屉打开?
因为我在没有ActionBarDrawerToggle的内置函数中这样做
setonDrawerOpenListener setonDrawerCloseListener
不可用.
请帮忙!!
解决方法
这可能对你有所帮助……
drawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() {
@Override
public void onDrawerStateChanged(int arg0) {
}
@Override
public void onDrawerSlide(View view,float arg1) {
}
@Override
public void onDrawerOpened(View view) {
if(view == rightDrawerView) {
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED,leftDrawerView);
} else if(view == leftDrawerView) {
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED,rightDrawerView);
}
}
@Override
public void onDrawerClosed(View view) {
if(view == rightDrawerView) {
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED,leftDrawerView);
} else if(view == leftDrawerView) {
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED,rightDrawerView);
}
}
});