Android added support for custom state descriptions in API 30. This allows for much richer announcements on elements that have more complex state than “selected”. For example, a play/pause button on a video player could have the state description of “platying” or “paused”.
These are powered by the setStateDescription property on the View and AccessibilityNodeInfo classes (https://developer.android.com/reference/android/view/View#setStateDescription(java.lang.CharSequence)).
This largely maps to the accessibilityValue property on iOS, so it may make sense to map the “text” value of that prop to stateDescription rather than concatenating it into the contentDescription as we do today.
When an element has stateDescription set, on focus the state is announced. On change of that state, only the change is announced, for example a video play button that has a state of “playing” that when clicked pauses, would automatically announce “paused” (the new state).
npx react-native info
|Issue Title||Created Date||Updated Date|