#android #kotlin
#Android #kotlin
Вопрос:
Итак, всякий раз, когда я создаю действие, я настраиваю значок настраиваемого индикатора следующим образом:
private fun setupActionBar() {
setSupportActionBar(toolbar)
supportActionBar?.apply {
setDisplayShowTitleEnabled(false)
setHomeButtonEnabled(true)
setHomeAsUpIndicator(R.drawable.custom_drawable)
setDisplayHomeAsUpEnabled(true)
}
}
Мой вопрос — как я могу изменить setHomeAsUpIndicator
стрелку назад по умолчанию из фрагмента?
Комментарии:
1. вызовите это из вашего фрагмента ((YourActivity) Objects.requireenonnull(getActivity())).setupActionBar(); на этот раз используйте setHomeAsUpIndicator(R.drawable.custom_drawable)
Ответ №1:
Внутри функции onAttach (контекст: контекст) во фрагменте вы можете получить доступ к панели действий
override fun onAttach(context : Context) {
if (context is YourParentActivity) {
val activity = context as YourParentActivity
activity.supportActionBar?.apply{
setDisplayShowTitleEnabled(false)
setHomeButtonEnabled(true)
setHomeAsUpIndicator(R.drawable.your_deafault_back_arrow)
setDisplayHomeAsUpEnabled(true)
//Here Customize your action bar as much as you want
}
}
}
Наслаждайтесь кодированием: Пожалуйста, дайте мне знать, если у вас возникнут какие-либо другие проблемы с этим
Комментарии:
1. «R.drawable.your_deafault_back_arrow» — для этого мне нужен пользовательский drawable. Это не то, что я ищу. Я хочу установить значение по умолчанию, предоставляемое самим Android.
2. Стрелка appcompat — это:
R.drawable.abc_ic_ab_back_material
По крайней мере, в последней библиотеке поддержки название менялось с годами.