【问题标题】:Disable swipe for open drawer but NOT for closing禁用滑动打开抽屉但不关闭
【发布时间】:2023-03-24 05:30:01
【问题描述】:
【问题讨论】:
标签:
android
navigation
swipe
gesture
drawer
【解决方案1】:
我找到了实现我想要的解决方法:
最初我将抽屉模式设置为关闭。打开后,例如通过一个按钮,我解锁抽屉以启用再次关闭的手势。抽屉关闭后,开启锁将重新激活。为此,我正在使用 ActionBarDrawerToggle 的接口
mDrawerToggle = new ActionBarDrawerToggle(
getActivity(), /* host Activity */
mDrawerLayout, /* DrawerLayout object */
R.string.navigation_drawer_open, /* "open drawer" description for accessibility */
R.string.navigation_drawer_close /* "close drawer" description for accessibility */
)
{
@Override
public void onDrawerClosed(View drawerView)
{
super.onDrawerClosed(drawerView);
mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
}
@Override
public void onDrawerOpened(View drawerView)
{
super.onDrawerOpened(drawerView);
mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
}
};
我试图覆盖抽屉布局或其中的一部分,但要得到我想要的东西将是一项艰巨的工作。
我希望这个解决方案对其他人有所帮助。