Я устанавливаю contentDescription
для панели инструментов в классе Fragment и DialogFragment.
В Fragment
классе, отлично работает.(например,
- на фокусе панели инструментов,
"toolbarContentDescription"
- при следующем пролистывании вперед,
"Navigation Up"
- при следующем пролистывании назад, "toolbarContentDescription")
В классе DialogFragment
Сначала читается навигация вверх.(например,
- на фокусе панели инструментов,
"Navigation Up toolbarContentDescription"
- при следующем перемещении вперед,
"Navigation Up"
- при следующем перемещении назад,
"toolbarContentDescription"
)
Я использую один и тот же код для установки панели инструментов в обоих классах.
Я попытался исправить это, изменив положение navigationContentDescription
.Но это не сработало в классе dialogFragment.и если я удаляю navigationContentDescription, на стрелке назад будет указано "Unlabeled Botton"
.
fun setToolBar(toolbar: Toolbar, title: String) {
getMainActivity().setSupportActionBar(toolbar)
toolbar.title = title
toolbar.contentDescription = "toolbar content description here"
toolbar.setTitleTextAppearance(context, R.style.white_toolbar_text)
toolbar.setBackgroundColor(ContextCompat.getColor(context, R.color.white))
toolbar.setNavigationIcon(R.drawable.ic_back_arrow)
// set back arrow content description.
toolbar.navigationContentDescription = "Navigation Up"
toolbar.setNavigationOnClickListener {
getMainActivity().onBackPressed()
}
toolbar.requestFocus()
toolbar.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED)
}
Я не понимаю причину такого различного поведения.Он должен прочитать то же описание панели инструментов, что и класс фрагмента во фрагменте диалога.