在抽屉/模式打开时更改本机应用程序中的可访问性焦点

And*_*sca 2 accessibility reactjs react-native react-native-android react-native-ios

我正在尝试提高 React Native 应用程序的可访问性,但面临以下问题:当用户打开菜单抽屉时,焦点不会更改为模态抽屉内容。相反,向左和向右滑动会聚焦在背景中的内容。

我尝试为抽屉和主要内容区域设置动态无障碍道具:

<NavigationMenu
    importantForAccessibility={isNavigationVisible ? 'yes' : 'no-hide-descendants'}
/>
<DashboardContent
    importantForAccessibility={isNavigationVisible ? 'no-hide-descendants' : 'yes'}
/>
Run Code Online (Sandbox Code Playgroud)

isNavigationVisible抽屉打开时更新的道具在哪里,但这没有效果。

有没有办法在抽屉打开时强制将焦点更改到抽屉?

And*_*sca 5

这就是我最终使用的:

const setFocus = ({ current: ref }) => {
    const FOCUS_ON_VIEW = 8;
    const reactTag = findNodeHandle(ref);

    Platform.OS === 'android'
        ? UIManager.sendAccessibilityEvent(reactTag, FOCUS_ON_VIEW)
        : AccessibilityInfo.setAccessibilityFocus(reactTag);
}
Run Code Online (Sandbox Code Playgroud)

  • 您能否简要说明一下如何在组件中使用它? (2认同)