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...

I wish the adjustsFontForContentSizeCategory was true by default. Instead, you need to configure it that way so elements adjust their font size as the content size category (dynamic type) changes when a preferred font is used for a given style.

Since iOS 14, you can get a human readable localised name for a UIColor, with a very useful property called accessibilityName, that you can use in accessibility attributes like labels or values. How cool is that? https://developer.apple.com/documentation/uikit/uicolor/accessibilityname

Make sure you support Dynamic Type up to the largest text size available. Take into account that there are five extra accessibility sizes available from the Accessibility Settings. It can make a huge difference for lots of users.

Created in Swift with Ignite.

Supporting Swift for Swifts