gpt4 book ai didi

android - 禁用汉堡包到工具栏上的后退箭头动画

转载 作者:IT老高 更新时间:2023-10-28 21:54:19 28 4
gpt4 key购买 nike

Toolbar 用汉堡包到后退箭头动画很容易实现。在我看来,这个动画毫无意义,因为根据 Material 设计规范,抽屉导航在打开时会覆盖 Toolbar。我的问题是如何正确禁用此动画并使用 getSupportActionBar().setDisplayHomeAsUpEnabled(true);

显示汉堡包或返回箭头

我就是这样做的,但它看起来像一个肮脏的黑客:

mDrawerToggle.setDrawerIndicatorEnabled(false);

if (showHomeAsUp) {
mDrawerToggle.setHomeAsUpIndicator(R.drawable.lib_ic_arrow_back_light);
mDrawerToggle.setToolbarNavigationClickListener(view -> finish());
} else {
mDrawerToggle.setHomeAsUpIndicator(R.drawable.lib_ic_menu_light);
mDrawerToggle.setToolbarNavigationClickListener(view -> toggleDrawer());
}

任何线索应该如何正确实现以仅使用 setDisplayHomeAsUpEnabled 在汉堡包和后退箭头图标之间切换?

最佳答案

这将禁用动画,在创建drawerToggle时,覆盖onDrawerSlide():

drawerToggle = new ActionBarDrawerToggle(this, drawerLayout,
getToolbar(), R.string.open, R.string.close) {

@Override
public void onDrawerClosed(View view) {
super.onDrawerClosed(view);
}

@Override
public void onDrawerOpened(View drawerView) {
super.onDrawerOpened(drawerView);
}

@Override
public void onDrawerSlide(View drawerView, float slideOffset) {
super.onDrawerSlide(drawerView, 0); // this disables the animation
}
};

如果要完全去掉箭头,可以加

 super.onDrawerSlide(drawerView, 0); // this disables the arrow @ completed state

在 onDrawerOpened 函数的末尾。

关于android - 禁用汉堡包到工具栏上的后退箭头动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27117243/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com