Mobile app development / DIJION
Where should Back take you? Preserving mobile navigation context
Navigation scenarios and acceptance checks that preserve position across lists, filters, tabs and external entry points.
Someone returning from a list item should not have to repeat the same search every time. Scroll position, filters and the selected tab are part of the task context. Treating Back merely as closing a screen can force repeated work. Start by deciding which state survives within each navigation boundary.
Distinguish Back, Close and moving up
Back can follow navigation history, Close can dismiss a temporary layer, and moving up can lead to the structural parent. These actions need not share an icon or destination. Android’s back-stack documentation explains history-based behavior; evaluate the product flow alongside the platform navigation model.
Resume the task when returning to a list
Consider an illustrative book list: a person filters, scrolls and opens a detail. On return, retain the query and a useful position near the same item. If content changed, an item identifier may preserve context better than an old pixel offset. Define a sensible fallback when the original item was deleted.
Scroll the table horizontally to see all columns.
| Entry | State to preserve | Additional check |
|---|---|---|
| Filtered list → detail | Query, filter and position | Nearby context if the item disappeared |
| Tab → temporary panel | Active tab and editing state | Unsaved information |
| External link → detail | A safe main navigation destination | No invented previous screen |
Draw a separate flow for external entry
A notification or external link can open a detail directly. That person has not necessarily visited the list. Instead of fabricating history, make the exit or parent destination understandable. When sign-in is required, return to the intended destination afterward. If the record no longer exists, offer a relevant recovery path.
Limit how long context is retained
An account change should not reveal a previous account’s private record or filters. Starting a new task differs from resuming an interrupted one. Write down where state resets; retaining every navigation detail indefinitely does not automatically make the experience clearer.
Three short acceptance exercises
- Open a detail from a filtered list and use system Back; the search context should remain.
- Open a detail from an external link in a fresh session; the exit path should make sense.
- Go back during editing; offer an explicit choice when entered information would be lost.
Repeat the checks on a narrow display, with larger text and after rotation. The useful output is a navigation table showing both the reason for entry and the state preserved on return, rather than just a list of screens.