gpt4 book ai didi

android - 使用带有导航组件的抽屉导航时如何更改操作栏图标(汉堡图标)

转载 作者:行者123 更新时间:2023-12-04 12:33:45 24 4
gpt4 key购买 nike

我想更改主页指示器,但在使用导航组件时它不起作用
我从这里尝试了解决方案,但没有奏效
how to change toolbar icon (hamburger icon) when using navigation drawer with jetpack navigation component
我的代码

    setSupportActionBar(binding.toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);

AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(R.id.myTeamFragment,
R.id.myTasksFragment, R.id.meetingsFragment, R.id.freeTimeFragment, R.id.dashboardFilterFragment)
.setOpenableLayout(binding.getRoot())
.build();
NavigationUI.setupWithNavController(binding.toolbar, getNavController(), appBarConfiguration);
然后作为解决方案提到
ActionBar actionBar = getSupportActionBar();
getNavController().addOnDestinationChangedListener((controller, destination, arguments) -> {
if (destination.getId() == R.id.dest0
|| destination.getId() == R.id.dest1
|| destination.getId() == R.id.dest2
|| destination.getId() == R.id.dest3
|| destination.getId() == R.id.dest4){

actionBar.setHomeAsUpIndicator(R.drawable.ic_hambergur_menu);
} else {
actionBar.setHomeAsUpIndicator(R.drawable.ic_hambergure_back);
}
});

最佳答案

您正在使用带有 Toolbar 的设置

NavigationUI.setupWithNavController(binding.toolbar, getNavController(), appBarConfiguration);
然后使用 Toolbar API 代替 ActionBar API:
    navController.addOnDestinationChangedListener { controller, destination, arguments ->
if (destination.id == R.id.nav_home){
toolbar.setNavigationIcon(R.drawable.xxxx)
}
}

关于android - 使用带有导航组件的抽屉导航时如何更改操作栏图标(汉堡图标),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66795091/

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