Невозможно сфокусироваться на кнопке действия на панели закусок, когда панель закусок отображается с включенным сенсорным режимом

Я пытаюсь сфокусироваться непосредственно на кнопке действия на панели закусок, когда отображается панель закусок, чтобы пользователи были осведомлены о том, что с предупреждающим сообщением можно выполнить какое-то действие, как показано на панели закусок. Примечание: это для режима двусторонней связи. Я пробовал использовать requestFocus() и sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);, но в любом случае фокус, кажется, остается во фрагменте. Также я столкнулся с аналогичной проблемой с кнопкой действия для просмотра материалов. Есть какие-нибудь советы о том, как сфокусироваться там?


person Himanshu Chhabra    schedule 19.08.2016    source источник


Ответы (2)


Назовите snackbar.getView().requestFocus(); своим последним шагом

Это означает, что он должен появиться после того, как вы настроите SnackBar, после того, как вы установили действие, и после того, как вы сделаете вызов show() (независимо от того, в каком порядке вы это делаете)

Если он работает на Android TV, где сосредоточение внимания похоже на выигрыш в лотерею, он должен работать на вас.

person Abandoned Cart    schedule 07.06.2019

  snackbar.getView().findViewById(com.google.android.material.R.id.snackbar_action).sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);

Не забудьте вызвать это через определенную задержку, чтобы специальные возможности были прикреплены к виджету закусочной.

person Amit kumar    schedule 25.07.2019