If both screenChanged and layoutChanged notifications signal changes in the UI and allow you to move VoiceOver's focus somewhere else, what's the difference? To the user, screen changed plays a sound indicating them they got moved to a new screen.

One example from the YouTube app shows that, when VoiceOver is on, and double tapping with the more actions button selected, VoiceOver plays a sound indicating that the screen changed (that's the difference between screen changed and layout changed notifications), and will then move the focus to the dismiss button of the presented screen. The second example is the camera app. When the camera controls button is focused, VoiceOver says:

You may also find interesting...

Meet the rotor. A menu that you activate (and change options) by rotating two fingers on the screen. It lets you select different navigation modes and customizations. Like navigating through headings or changing VoiceOver’s speaking rate.

To capture the gesture, you can override the accessibilityPerformEscape() function. In there you can dismiss your view, and return true if you could successfully handle it. https://developer.apple.com/documentation/objectivec/nsobject-swift.class/accessibilityperformescape()

You don't have to offer an alternative layout just for the accessibility category. You can actually compare content size categories. So you could tweak the UI already for anything equal to or larger than .extraExtraLarge, for example.

Created in Swift with Ignite.

Supporting Swift for Swifts