【发布时间】:2019-06-11 13:37:41
【问题描述】:
我想更改与导航组件一起使用的 ActionBar 中的向上按钮图标。我尝试了几个选项,例如:
supportActionBar?.setHomeAsUpIndicator(R.drawable.ic_arrow_left_blue_24dp)
在MainAcitivty 或
app:navigationIcon="@drawable/ic_arrow_left_blue_24dp"
在Toolbar .xml 文件中,似乎没有任何效果。
我有一个非常标准的设置
setSupportActionBar(appToolbar.toolbar)
setupActionBarWithNavController(this, navController)
在MainActivity:onCreate 方法中调用。
我希望这样
supportActionBar?.setHomeAsUpIndicator(R.drawable.ic_arrow_left_blue_24dp)
会起作用,因为例如通过调用禁用 ActionBar 的标题:
supportActionBar?.setDisplayShowTitleEnabled(false)
按预期工作,并且在导航时标题未设置为 Fragment 名称。
更重要的是,我调查了一下,在ActionBarOnDestinationChangedListener 中有一个对setNavigationIcon 的调用,它将一个图标设置为DrawerArrowDrawable,这有点奇怪,因为我没有使用Drawer我的设置。
也改为:
setupWithNavController(toolbar, navController)
不工作,因为ToolbarOnDestinationChangedListener 也使用相同的DrawerArrowDrawable。
【问题讨论】:
标签: android android-navigation android-jetpack android-architecture-navigation