在我立即完成某些 Activity 后,我试图关闭我的抽屉导航,没有滑动动画。我不会在 Activity 开始时关闭它,因为我希望它在用户退出 Activity 时保持打开状态。但是,当它自行关闭时,我无法在没有短暂闪烁动画的情况下关闭它。我尝试了以下代码的变体:
protected void closeDrawerImmediate() {
mDrawerLayout.setVisibility(View.GONE);
mDrawerLayout.closeDrawers();
mDrawerLayout.setX(0);
mDrawerLayout.setVisibility(View.VISIBLE);
}
最佳答案
您可以使用支持库 v24 中新的 DrawerLayout.closeDrawer(int/View, bool)
方法立即关闭抽屉:
drawerLayout.closeDrawer(Gravity.LEFT, false);
如果您只想立即关闭抽屉,例如当您通过点击抽屉项目启动 Activity 时,这可能就足够了。
如果你想在返回 Activity 时关闭抽屉,我会设置一个有状态的 bool 值,如 closeDrawerOnResume = true
在适当的地方(例如开始一个新的 Activity ),然后在onResume
检查此 bool 值,如果为真则关闭抽屉而不设置动画。
关于android - 关闭没有动画的抽屉导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30130537/