Как получить доступ к элементам всплывающего окна с помощью службы специальных возможностей в AndroidAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как получить доступ к элементам всплывающего окна с помощью службы специальных возможностей в Android

Сообщение Anonymous »

Я работал над службой специальных возможностей для доступа к данным элементов приложения, таким как текст, описание, идентификатор ресурса и т. д., используя следующую конфигурацию специальных возможностей:


Благодаря этой настройке я могу фиксировать события при взаимодействии с элементами в приложении. Однако когда открывается всплывающее окно и я пытаюсь взаимодействовать с кнопками (например, кнопкой поиска, звездным сообщением, кнопкой ответа) внутри всплывающего окна, в функции onAccessibilityEvent() не запускаются никакие события. (Всплывающее окно показано на прилагаемом снимке экрана).
Изображение

Я также попытался изменить конфигурацию, изменив android:accessibilityFlags на:
android:accessibilityFlags="flagRequestTouchExplorationMode|flagIncludeNotImportantViews|flagRetrieveInteractiveWindows|flagReportViewIds"
Однако я по-прежнему получаю только корневой элемент экрана. Я знаю, что такая функциональность возможна, поскольку такие службы, как TalkBack, могут легко обрабатывать такие взаимодействия. Чего мне может не хватать для достижения желаемой функциональности?
Код для BottomSheet:
























код для открытия нижнего листа активности:
val openBottomSheetButton: Button = findViewById(R.id.open_bottom_sheet_button)

openBottomSheetButton.setOnClickListener {
val dialog = BottomSheetDialog(this)

val view = layoutInflater.inflate(R.layout.bottomsheet, null)

val btnClose = view.findViewById(R.id.idBtnDismiss)

btnClose.setOnClickListener {

dialog.dismiss()
}

dialog.setCancelable(false)

dialog.setContentView(view)

dialog.show()
}


Подробнее здесь: https://stackoverflow.com/questions/789 ... in-android
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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