Есть ли способ преобразовать ViewGroup в кнопку для доступности?

У меня есть пользовательское представление с четырьмя текстовыми представлениями внутри макета ограничения.
Проблема в том, что я реализую специальные возможности, и это представление должно быть дочерним элементом какой-либо кнопки, чтобы наследовать поведение "..., Кнопка», — сказал Talkback. Есть ли способ преобразовать представление в тип Button? Или любой способ заставить Talkback распознать это представление как кнопку?

Мой xml выглядит так:

<ConstraintLayout>
  <CustomViewGroup>
    <AppCompatTextView>
  </CustomViewGroup>
  <CustomViewGroup>
    <AppCompatTextView>
  </CustomViewGroup>
  <CustomViewGroup>
    <AppCompatTextView>
  </CustomViewGroup>
  <CustomViewGroup>
    <AppCompatTextView>
  </CustomViewGroup>
  <View>
</ConstraintLayout>

person Bruno Fernandez    schedule 12.05.2020    source источник


Ответы (1)


Ваш пользовательский вид должен расширять класс «Кнопка». Или вы можете использовать contentDescription. В каждом текстовом представлении добавьте описание контента с текстом, который вы хотите (например: «действие одной кнопки»)

person Filipe Oliveira    schedule 12.05.2020
comment
Первый вариант хорош. Второй нет. Нехорошо навязывать тип представления только в ContentDescription. Должен быть код, чтобы сказать пользовательскому представлению, что это кнопка, и двусторонняя связь распознает его как кнопку... - person Bruno Fernandez; 03.07.2020