1e41f4b71Sopenharmony_ci# Application Navigation Structure Design
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ciNavigation enables users to move between pages of an application to browse content. A good navigation allows users to know where they are now, where they are going, and where they come from.
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci
7e41f4b71Sopenharmony_ci## Navigation Design Rules
8e41f4b71Sopenharmony_ci
9e41f4b71Sopenharmony_ciNavigation design must comply with the following rules:
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci- **Consistent**: The navigation operation results should meet user expectations. Use UI layout and components that users are familiar with, and ensure consistent application architecture and navigation behavior on different devices in the same or similar scenarios. This allows users to know how to navigate on any screen. For example, on any level-2 screen, users can click or touch the back button in the upper left corner to return to the upper-level screen.
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci- **Clear**: Navigation should provide clear paths with simple logical relationships so that users can easily know where they are and where they will go after an operation. For example, users can use bottom tabs to switch between screens of the same level.
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ciAvoid the following in navigation design:
16e41f4b71Sopenharmony_ci
17e41f4b71Sopenharmony_ci- **Too many levels**: A maximum of three navigation levels are recommended. Too many levels may lead to low operational efficiency. If in-depth design is required, you are advised to use breadcrumb design or enable one-click to the home page.
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci- **Complex navigation**: Do not use bottom tabs on a screen where a sidebar is used. This practice makes operations complex.
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci## Navigation Classification
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ciCommon types of application navigation are flat navigation, hierarchical navigation, and hybrid navigation.
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci**Flat Navigation**
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ciIn flat navigation, pages are placed at the same level of hierarchy.
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ciThis type of navigation is used to display screens at the same level.
31e41f4b71Sopenharmony_ci
32e41f4b71Sopenharmony_ci![en-us_image_0000001517612912](figures/en-us_image_0000001517612912.jpg)
33e41f4b71Sopenharmony_ci
34e41f4b71Sopenharmony_ciFor example, a page consisting of tabs is a type of flat navigation. As shown in the figure below, **Photos**, **Albums**, and **Discover** are level-1 screens, and users can access level-2 screens from **Videos**.
35e41f4b71Sopenharmony_ci
36e41f4b71Sopenharmony_ci![one-to-many-2-2](figures/one-to-many-2-2.png)
37e41f4b71Sopenharmony_ci
38e41f4b71Sopenharmony_ciDuring multi-device design, use different types of navigation components. For example, bottom tab navigation is used on the default device, side navigation is used on the tablet and PC, and top tab navigation is used on the large screen.
39e41f4b71Sopenharmony_ci
40e41f4b71Sopenharmony_ci![one-to-many-2-3](figures/one-to-many-2-3.png)
41e41f4b71Sopenharmony_ci
42e41f4b71Sopenharmony_ci**Hierarchical Navigation**
43e41f4b71Sopenharmony_ci
44e41f4b71Sopenharmony_ciHierarchical navigation consists of parent pages and child pages. A parent page can have one or more child pages. Each child page has a unique parent page.
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ciHierarchical navigation applies to complex multi-level structures. This navigation creates a long path for users to access deep-structured content and thereby decreases the access efficiency. To resolve this issue, you can adopt cross-hierarchy design. For example, the Bluetooth switch in Control Panel solves the problem of enabling Bluetooth by manipulating **Settings**.
47e41f4b71Sopenharmony_ci
48e41f4b71Sopenharmony_ciThis type of navigation can be used in applications with hierarchical pages.
49e41f4b71Sopenharmony_ci
50e41f4b71Sopenharmony_ci![en-us_image_0000001568093237](figures/en-us_image_0000001568093237.jpg)
51e41f4b71Sopenharmony_ci
52e41f4b71Sopenharmony_ciFor example, users can click or touch the back button to return to the previous page after accessing the content.
53e41f4b71Sopenharmony_ci
54e41f4b71Sopenharmony_ci![one-to-many-2-5](figures/one-to-many-2-5.png)
55e41f4b71Sopenharmony_ci
56e41f4b71Sopenharmony_ciDuring multi-device design, you may display the upper-level and lower-level pages on the same screen. For example, use hierarchical navigation on the default device and large screen, but use the split-view layout on the tablet and PC.
57e41f4b71Sopenharmony_ci
58e41f4b71Sopenharmony_ci![one-to-many-2-6](figures/one-to-many-2-6.png)
59e41f4b71Sopenharmony_ci
60e41f4b71Sopenharmony_ci**Hybrid Navigation**
61e41f4b71Sopenharmony_ci
62e41f4b71Sopenharmony_ciIn actual application design, using only flat or hierarchical navigation may not be able to cope with more complex business structures. If this is the case, you need to distinguish the navigation relationships of different pages. For pages with the same position or level, use flat navigation. For pages with complex relationships, use hierarchical navigation.
63e41f4b71Sopenharmony_ci
64e41f4b71Sopenharmony_ciHybrid navigation applies to an application that consists of several modules at the same level, with each module having hierarchical pages.
65e41f4b71Sopenharmony_ci
66e41f4b71Sopenharmony_ci![en-us_image_0000001568212949](figures/en-us_image_0000001568212949.jpg)
67e41f4b71Sopenharmony_ci
68e41f4b71Sopenharmony_ciDuring multi-device design, you can use both flat navigation and hierarchical navigation. Generally, the priority of flat navigation is higher than that of hierarchical navigation.
69e41f4b71Sopenharmony_ci
70e41f4b71Sopenharmony_ci![hybrid navigation](figures/hybrid-navigation.png)
71