I have a bunch of buttons on the screen which are positioned intuitively visually but are not read in an intuitive order by VoiceOver. This is because certain buttons like U
In Swift you just have to set view's accessiblityElements array property:
accessiblityElements
view.accessibilityElements = [view1, view2, view3] // order you wish to have
view.accessibilityElements = [view1, view2, view3]