We are currently developing an app with a content catalogue. The catalogue is large (about 5'000 nodes) and hierarchical, with the typical node having about 5-10 subnodes. We want to display this in a nested UI, with mixed scrolling, something like this:
------------------------------------------------------|
| Level 1, scrolls horizontally, coupled with level 2 |
------------------------------------------------------|
| Level 2, scrolls horizontally, coupled with level 1 |
------------------------------------------------------|
| |
| Title of currently selected Level 2 item |
| |
| --------------------------------------------- |
| | Level 3 container, scrolls vertically | |
| | | |
| | --------------------------------- | |
| | | Level 3 item | | |
| | | | | |
| | --------------------------------- | |
| | | |
| | --------------------------------- | |
| | | Level 3 item | | |
| | | | | |
| | | ---------------- ----------| | |
| | | | Level 4 item | | Level 4 | | |
| | | ---------------- ----------| | |
| | | | | |
| | --------------------------------- | |
| | | |
| --------------------------------------------- |
| |
------------------------------------------------------|
As you can see, there are four levels of the hierarchy visible at the same time, and they are all scrollable, three of them horizontally, and one (level 3) vertically.
So if the user scrolls
- level 1, then level 2 scrolls simultaneously, but at a faster pace (because we have more items at level 2 than items at level 1).
- level 2, then level 1 scrolls simultaneously, but at a slower pace. When a new item at level 2 is centered, then the whole lower UI refreshes and shows the currently selected level 2 item.
- level 3, then the level 3 items scroll up and down. This is the only level that scrolls vertically.
- level 4, then the level 4 items, which are nested in the level 3 items, scroll horizontally.
My question is, has something like this (or parts of it) ever be done? Are there any apps (preferably mobile apps) that use a pattern similar to this?