Potential benefits from grouping logical pieces of information and moving buttons to custom actions: reduce redundancy (by removing repetitive controls) and reduce cognitive load (by making easier to know what item will be affected by each action)

Tumblr app is open. If each post is not grouped and its buttons are not custom actions, VoiceOver would announce: author, report, post, share, reply, re-blog, like, author, report, post, share, reply, re-blog, like, author, report, post, share, reply, re-blog, like... Notice how share, reply, re-blog and like, keep repeating over and over (the author and post can be different in each post). If a user selects a like button, VoiceOver will say:

You may also find interesting...

Support both orientations, if possible. I know not even iOS itself does it, but it hasn't always been like that. You'll create a more robust UI that will be easier to port to iPadOS. And especially, don't force your users to rotate their devices.

Check for the traversal order of elements in your app. Sometimes, the default top-left to bottom-right order might not be the most logical one. Sometimes, you may consciously want to tweak the order. Some other times, grouping is the answer.

You can add an observer to listen for changes in the content size category, in case it is more convenient than overriding traitCollectionDidChange(_:).

Created in Swift with Ignite.

Supporting Swift for Swifts