Dynamic Type is a feature that lets a user change the font size (smaller or larger) of the whole system or a particular app. To support it, choose a preferred font based on one of the 11 supported text styles: Large title, heading, body...

Four apps showcasing the available text styles: Large title, title 1, title 2, title 3, headline, subhead, body, callout, caption 1, caption 2 and footnote. Each one of the four apps has a different dynamic type option selected: extra small, large (which is the default), extra extra extra large and accessibility extra extra extra large. So it is easy to compare how these styles change for different dynamic type options. To support it, you can configure a preferredFont for a label, passing a textStyle.

You may also find interesting...

If you are displaying something in two or more columns, you may want to change that to as little as one column when using some of the largest Dynamic Type settings to keep the text readable.

Toggles or UISwitches are often found separated from the label that precedes (and describes) them; with an unclear label; missing a value, trait, or hint; or even not being actionable at all.

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.

Created in Swift with Ignite.

Supporting Swift for Swifts