We need to detect if a person is using VoiceOver, Switch Control, TalkBack, or Switch Access to display alternate buttons on our swipe-dependent application.
Normally we'd look for UIAccessibilityIsVoiceOverRunning
, AccessibilityManager
, and other hooks to detect the need to display these buttons.
We are also respecting the user's preference for bold fonts and simplified animation via hooks like UIAccessibilityIsBoldTextEnabled()
.
I couldn't find documentation within React that details how we can get this type of information from the device and write the logic for changing the app's interface.
I'm a web developer, so this may or may not be relevant: Could you not default to the non-VoiceOver view, but if a single item on the page becomes focused or scrolled without at least one
ontouchdown
event, then you now know that non-touch input is being used, and then enable the alternative behavior?