I am in the process of implementing a generic material design stepper according to the specification here.
Unfortunately there are some points I do not completely understand, maybe there is someone that could help me out (to fulfill user expectations):
1. Differentiation of editable vs. non-editable vs. optional Steps
In the specification you will find different types of steps. Among them there are editable, non-editable and optional steps.
The way I understand it it works like follows:
1.1 Non-editable Steps
If at a non-editable step, once the user clicks
Next, the step is completed & submitted, there is no way of coming back and changing the step.
1.2 Editable Steps
Those steps can be edited later on. Once the step is completed and submitted (by clicking
Next), the user can come back at any time to change and resubmit the step.
1.3 Optional Steps
Those steps can be skipped by the user. If the user skips this step by pressing
Skip, it is completed, but not submitted and the stepper proceeds.
If the user presses
Next, the step is completed and submitted.
Depending on whether the the optional step is editable, it will behave according to the sections 1.1/1.2. regarding going back/forth
2. Differentiation of linear vs. non-linear Stepper
Additionally to the different step types, there are also different stepper types.
The general navigation using buttons works like this is both cases:
Next: go to the first following editable or non completed step.
Back: go to the first, preceding editable or non completed step.
Skip: go to the first, following editable or non completed step.
- And: the buttons are only visible if there is actually a previous or next step.
2.1 Linear Stepper
In this stepper one step is completed after the other, in the given order.
Navigation happens only using the buttons (or clicking on the title on editable steps).
2.2 Non-Linear Steppers
In this stepper the user can complete the steps in a different order. Navigation happens by clicking on the step title or using the buttons.
Nevertheless, once a step is completed and non-editable, there is still no way of coming back. So again the principles of Section 1. apply here.
Is this interpretation correct? Do you see any drawbacks/pitfalls?
It's just that the specification is not completely clear to me.
Thank you already!
Would you rather ignore editable steps for the
So instead of proceeding to the next non-completed, editable step, you would go to the next non-completed, non- editable step?
And instead of going to the preceding non-completed, editable step you would go to the preceding non-completed, non- editable step? (Which would by consequence hide the
Back button completely in a linear stepper?)