• Home
Name Date Size #Lines LOC

..--

AppScope/22-Oct-2025-3432

entry/22-Oct-2025-2,6622,448

hvigor/22-Oct-2025-88

screenshots/Devices/22-Oct-2025-

.gitignoreD22-Oct-2025119 1111

README_zh.mdD22-Oct-20255.5 KiB14389

build-profile.json5D22-Oct-20251 KiB4241

hvigorfile.tsD22-Oct-2025159 21

hvigorwD22-Oct-20252.1 KiB6455

hvigorw.batD22-Oct-20252.1 KiB7960

oh-package.json5D22-Oct-2025238 1312

ohosTest.mdD22-Oct-20251.3 KiB1110

README_zh.md

1## 一多分栏控件
2
3### 介绍
4
5本示例分别展示了多场景下,一多分栏控件的响应式变化效果。
6
7本示例分别用到了[SideBarContainer](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-sidebarcontainer.md)组件与[Navigation](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-basic-components-navigation.md)组件,对应使用场景如下:
8
9* A+B+C:即SideBarContainer组件组合Navigation组件
10* A+C:SideBarContainer组件
11* B+C:Navigation组件
12
13
14
15### 效果预览
16
17本示例在预览器中的效果:
18
19**A+B+C**:
20
21| 360vp                               | 600vp                               | 840vp                               |
22| ----------------------------------- | ----------------------------------- | ----------------------------------- |
23| ![](screenshots/Devices/image3.png) | ![](screenshots/Devices/image2.png) | ![](screenshots/Devices/image1.png) |
24
25**A+C**:
26
27| 360vp                               | 600vp                               |
28| ----------------------------------- | ----------------------------------- |
29| ![](screenshots/Devices/image8.png) | ![](screenshots/Devices/image7.png) |
30
31
32
33**B+C**:
34
35| 360vp                                | 600vp                               |
36| ------------------------------------ | ----------------------------------- |
37| ![](screenshots/Devices/image10.png) | ![](screenshots/Devices/image9.png) |
38
39使用说明:
40
411.在预览器中查看页面效果
42
432.在预览器中开启窗口拖拽模式,拖动窗口变化,可以查看组件的响应式变化,如下图所示:
44![](screenshots/Devices/image11.png)
45
46
47### 工程目录
48
49```
50MultiNavBar/entry/src/main/ets/
51|---model
52|   |---dataType.ets                       // 侧边栏菜单数据类型
53|---Application
54|   |---MailBox.ets                        // 邮箱
55|   |---PhotoAlbum.ets                     // 图库
56|   |---Settings.ets                       // 设置
57|---pages
58|   |---Index.ets                          // 首页
59|---common
60|   |---BreakpointSystem.ets               // 媒体查询
61|   |---MailContent.ets                    // 邮箱详情
62|   |---MailNavigation.ets                 // 邮箱导航
63|   |---MailSideBar.ets                    // 邮箱侧边栏
64|   |---PhotoContent.ets            	   // 图库详情
65|   |---PhotoSideBar.ets             	   // 图库侧边栏
66|   |---SettingItem.ets             	   // setting设置项
67|   |---WlanItem.ets             	       // Wlan详情页
68```
69
70
71
72### 具体实现
73
74* [SideBarContainer](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-sidebarcontainer.md)组件,自动隐藏侧边栏的功能是由minContentWidth与minSideBarWidth属性实现的。当设置[SideBarContainer](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-sidebarcontainer.md)组件组件的显示类型为SideBarContainerType.Embed,并且窗口宽度达到minContentWidth + minSideBarWidth的边界值时,侧边栏自动隐藏。
75
76* [Navigation](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-basic-components-navigation.md)组件,自动隐藏侧边栏的功能是由minContentWidth属性实现的。当[Navigation](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-basic-components-navigation.md)的内容区域达到minContentWidth设置的值时,navBar自动隐藏。
77
78
79
80**响应式规则**
81
82**场景一:A+B+C**
83
841. 预览器窗口宽度>840vp时,显示A、B、C三列,放大缩小时,优先变化C列
852. 预览器窗口宽度<=840vp并且>600vp时,显示B、C两列,放大缩小时,优先变化C列
863. 预览器窗口宽度<=600vp并且>360vp时,仅显示C列
87
88**场景二:A+C**
89
901. 预览器窗口宽度>600vp时,显示A、C三列,放大缩小时,优先变化C列
912. 预览器窗口宽度<=600vp并且>360vp时,仅显示C三列
92
93
94
95**场景三:B+C**
96
971. 预览器窗口宽度>600vp时,显示B、C三列,放大缩小时,优先变化C列
98
992. 预览器窗口宽度<=600并且>360vp时,仅显示C三列
100
101
102
103### 相关权限
104
105不涉及。
106
107### 依赖
108
109不涉及
110
111### 约束与限制
112
1131. 本示例仅支持标准系统上运行,支持设备:RK3568。
114
1152. 本示例为Stage模型,支持API10版本SDK,SDK版本号(API Version 10 Release),镜像版本号(4.0 Release)
116
1173. 本示例需要使用DevEco Studio 版本号(4.0 Release)及以上版本才可编译运行。
118
1194. 本示例在真机设备上运行时,需要修改设备系统配置文件以使能应用小窗口能力。
120
121```
122# 将开发板文件系统的权限配置为可读写
123hdc shell mount -o rw,remount /
124# 取出原始配置文件
125hdc file recv system/etc/window/resources/window_manager_config.xml C:\
126# 将文件中<decor enable="false"></decor>改为<decor enable="true"></decor>
127# 用修改后的文件替换系统中的原始文件
128hdc file send C:\window_manager_config.xml system/etc/window/resources/window_manager_config.xml
129# 重启后生效
130hdc shell reboot
131```
132
133### 下载
134
135如需单独下载本工程,执行如下命令:
136
137```
138git init
139git config core.sparsecheckout true
140echo code/SuperFeature/MultiDeviceAppDev/MultiColumns/ > .git/info/sparse-checkout
141git remote add origin https://gitee.com/openharmony/applications_app_samples.git
142git pull origin master
143```