A critical part of using a digital device with a screen interface is navigation: Moving between views to find what you’re looking for without getting lost. Everyone who has used iOS for a while develops tacit knowledge of the platform-specific navigation principles. It matters, for example, whether a view slides in from the right or from the bottom. Animated transitions aren’t decoration—they explain the structural relationship between different parts of an app. This unofficial bonus chapter for Apple’s Human Interface Guidelines is intended as a complete overview of navigation patterns on iOS—something that Frank thinks is missing from the official guidelines.
The structural basis of a typical iOS app is a fixed information architecture—often a hierarchical tree that is several levels deep. The following structural patterns help the user navigate the app’s conceptual map. Following the hierarchical paths makes for predictable navigation—it prevents random jumping between arbitrary app sections. Ideally, you never end up in a different part of the app without understanding how you got there.
Overlays are easy to recognize: They are extra layers that cover part of the app. They want your attention. Unlike the structural patterns, overlays can appear over any context—even on top of other overlays! Modal overlays, on the one hand, require user interaction to dismiss them: They switch the app into a different mode, blocking the interface behind them. Non-modal overlays, on the other hand, don’t block the rest of the app—like notifications and other visual feedback from the operating system.
The following patterns require extra care to fit into the strict spatial flow of iOS without confusing the audience about where they are in the information hierarchy. It is best to contain or embed such a pattern in another view—one that sits in a clearly defined location in the app structure or in a modal overlay.