Я пытаюсь (безуспешно) изменить значок стрелки назад на панели инструментов при использовании NavHostFragment
. Я использую NavController
с панелью инструментов (как вы можете видеть здесь)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
setSupportActionBar(toolbar)
val navController = findNavController(R.id.nav_host_fragment)
appBarConfiguration = AppBarConfiguration(navController.graph)
setupActionBarWithNavController(navController, appBarConfiguration)
navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener)
toolbar.setTitleTextColor(resources.getColor(R.color.toolbarTextColor))
navigation.setupWithNavController(Navigation.findNavController(this, R.id.nav_host_fragment))
}
Навигация работает правильно, но я не могу изменить значок возврата.
Я уже пробовал использовать собственную тему. Ни один из определенных атрибутов до сих пор не работал.
<style name="ToolbarTheme" parent="@style/ThemeOverlay.AppCompat.ActionBar">
<item name="android:navigationIcon">@drawable/ic_keyboard_arrow_left_black_24dp</item>
<item name="android:homeAsUpIndicator">@drawable/ic_keyboard_arrow_left_black_24dp</item>
<item name="collapseIcon">@drawable/ic_keyboard_arrow_left_black_24dp</item>
<item name="android:closeIcon">@drawable/ic_keyboard_arrow_left_black_24dp</item>
</style>
Попробовал с помощью кода:
toolbar.navigationIcon = resources.getDrawable(R.drawable.ic_keyboard_arrow_left_black_24dp)
toolbar.setNavigationIcon(R.drawable.ic_keyboard_arrow_left_black_24dp)
toolbar.navigationIconResource = R.drawable.ic_keyboard_arrow_left_black_24dp
При использовании кода после создания макета появляется кнопка «Назад», но при вводе другого фрагмента значок возвращается к значку «Назад» по умолчанию.
Как я могу это изменить?