Android Talkback, нужна помощь, как игнорировать вспомогательный текст для textinputlayout ⇐ Android

Форум для тех, кто программирует под Android
Anonymous
Android Talkback, нужна помощь, как игнорировать вспомогательный текст для textinputlayout

Сообщение Anonymous »

Я пытаюсь написать собственный AccessibilityDelagate для TextInputLayout; он содержит TextInputEditText со вспомогательным текстом, помеченным как «required», указывающим, что это будет обязательное поле, привязанное к включению кнопки. Визуально выглядит нормально, но попытка игнорировать его для обратной связи , я не знаю, как это сделать. Решение от Copilot привело к тому, что я попытался найти поле с именем «helperTextView» в классе TextInputLayout, но мне вернули исключение NoSuchFieldException.

Код: Выделить всё

fun TextInputLayout.makeHelperTextNonAccessible() {
try {
val helperTextViewField = TextInputLayout::class.java.getDeclaredField("helperTextView")
helperTextViewField.isAccessible = true
val helperTextView = helperTextViewField.get(this) as? View
helperTextView?.importantForAccessibility = View.IMPORTANT_FOR_ACCESSIBILITY_NO
} catch (e: Exception) {
e.printStackTrace()
}
}

Код: Выделить всё

java.lang.NoSuchFieldException: No field helperTextView in class Lcom/google/android/material/textfield/TextInputLayout
Также возникают проблемы, когда Talkback считывает полное описание пользовательского контента, установленное в textinputlayout, всякий раз, когда фокус перемещается на необходимое поле.
Желаемая конечная цель - получить функцию TextInputLayout обязательного поля и прочитать мое пользовательское описание содержимого, в котором говорится, что это обязательное поле, и в то же время отключить доступность вспомогательного текста и игнорировать его при пролистывании.


Подробнее здесь: https://stackoverflow.com/questions/792 ... -for-texti

Вернуться в «Android»