Intro
The step progress indicator is a progress indicator for tracking and displaying a user’s state in a user flow. It allows the user to navigate to another step in both the default view and the optional “All Steps” view.
Step progress indicator in compact (left) and regular width (right)
Usage
Do
- A step progress indicator should at least show two steps.
- Use dynamic steps for sub-steps and steps which are dependent on default steps.
- Displaying a partial view of the last step on the screen for a scrollable step progress indicator is highly recommended.
- Keep step names short – we recommend no more than two lines of text.
Don't
- Try to avoid showing both header and step names under step nodes.
- Don’t count dynamic steps in the total number of steps.
- Don’t show a partial view of a step on the screen if the step progress indicator is not scrollable.
Anatomy
Default View
A. Current Step Name (Optional)
Describes the current step’s name.
B. “All Steps” Button (Optional)
Allows users to view all steps on another screen.
C. Step Node
Displays the number or the icon representing a step in the user flow.
D. Step Line
A line that connects the current step with the next step. No step line for the final step.
E. Step Name (Optional)
Describes each step’s name.
Step progress indicator “default” view
“All Steps” View
A. Step Node
Displays the number or the icon representing a step in the user flow.
B. Step Line
A line that connects the current step with the next step. No step line for the final step.
C. Step Name
Describes each step’s name.
Step progress indicator "All Steps” view
Behavior and Interaction
Step Navigation
A step progress indicator allows users to navigate to another step in both default and “All Steps” view.
In a linear user flow, users can tap on the next step when the current step is complete.
In a non-linear user flow, users can tap on any other step regardless of its state.
Navigation between steps
“All Steps” View
Tap on “All Steps” button in the header to navigate to “All Steps” view
Horizontal Scrolling
If a step progress indicator contains more steps than one screen can show, users can drag horizontally to view more steps.
When users complete the last step on one screen and try to navigate to the next step, the step progress indicator automatically scrolls to the next screen with the selected step pinned as the first step on the screen. However, if the last auto-scroll screen contains the final step, the progress indicator bar is right aligned.
Horizontal scrolling
Adaptive Design
In regular width, the “All Steps” view is displayed in a popover modal.
“All Steps” view in compact width (left) and regular width (right)
Variations
Value State
Step value states from left to right: complete – error – active – default – disabled
Numeric Step
Numeric steps in a user flow
Icon Step
Icon steps in a user flow
Dynamic Step
Example of a dynamic step based on user actions
Resources
Development: UIKit FUIStepProgressIndicator, StepProgressIndicator
SAP Fiori for Android: Step Progress Indicator
SAP Fiori for Web: Wizard Floorplan
Related Components/Patterns: Sibling Navigation