鸿蒙OS开发:【一次开发,多端部署】(分栏控件)

一多分栏控件

介绍

本示例分别展示了多场景下,一多分栏控件的响应式变化效果。

本示例分别用到了[SideBarContainer]组件与[Navigation]组件,对应使用场景如下:

  • A+B+C:即SideBarContainer组件组合Navigation组件
  • A+C:SideBarContainer组件
  • B+C:Navigation组件

效果预览

本示例在预览器中的效果:

A+B+C:

A+C:

B+C:

使用说明:

1.在预览器中查看页面效果

2.在预览器中开启窗口拖拽模式,拖动窗口变化,可以查看组件的响应式变化,如下图所示:

工程目录

复制代码
`HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿`

MultiNavBar/entry/src/main/ets/
|---model
|   |---dataType.ets                       // 侧边栏菜单数据类型
|---Application                                  
|   |---MailBox.ets                        // 邮箱
|   |---PhotoAlbum.ets                     // 图库
|   |---Settings.ets                       // 设置
|---pages                                  
|   |---Index.ets                          // 首页
|---common                                    
|   |---BreakpointSystem.ets               // 媒体查询
|   |---MailContent.ets                    // 邮箱详情
|   |---MailNavigation.ets                 // 邮箱导航
|   |---MailSideBar.ets                    // 邮箱侧边栏
|   |---PhotoContent.ets            	   // 图库详情
|   |---PhotoSideBar.ets             	   // 图库侧边栏     
|   |---SettingItem.ets             	   // setting设置项  
|   |---WlanItem.ets             	       // Wlan详情页

具体实现

  • SideBarContainer\]组件,自动隐藏侧边栏的功能是由minContentWidth与minSideBarWidth属性实现的。当设置\[SideBarContainer\]组件组件的显示类型为SideBarContainerType.Embed,并且窗口宽度达到minContentWidth + minSideBarWidth的边界值时,侧边栏自动隐藏。

  • 开发前请熟悉鸿蒙开发指导文档gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。

响应式规则

场景一:A+B+C

  1. 预览器窗口宽度>840vp时,显示A、B、C三列,放大缩小时,优先变化C列
  2. 预览器窗口宽度<=840vp并且>600vp时,显示B、C两列,放大缩小时,优先变化C列
  3. 预览器窗口宽度<=600vp并且>360vp时,仅显示C列

场景二:A+C

  1. 预览器窗口宽度>600vp时,显示A、C三列,放大缩小时,优先变化C列
  2. 预览器窗口宽度<=600vp并且>360vp时,仅显示C三列

场景三:B+C

  1. 预览器窗口宽度>600vp时,显示B、C三列,放大缩小时,优先变化C列
  2. 预览器窗口宽度<=600并且>360vp时,仅显示C三列
相关推荐
小兵张健19 分钟前
目前最省最强用 GLM 5 + MiniMax 2.5 方案
程序员
无限大61 小时前
《AI观,观AI》:AI重构工作结构,你的工作重心,该偏移了
程序员
陈随易4 小时前
真的,你可以不用TypeScript
前端·后端·程序员
在人间耕耘5 小时前
HarmonyOS Vision Kit 视觉AI实战:把官方 Demo 改造成一套能长期复用的组件库
人工智能·深度学习·harmonyos
王码码20356 小时前
Flutter for OpenHarmony:socket_io_client 实时通信的事实标准(Node.js 后端的最佳拍档) 深度解析与鸿蒙适配指南
android·flutter·ui·华为·node.js·harmonyos
HarmonyOS_SDK6 小时前
【FAQ】HarmonyOS SDK 闭源开放能力 — Ads Kit
harmonyos
Swift社区8 小时前
如何利用 ArkUI 框架优化鸿蒙应用的渲染性能
华为·harmonyos
程序员鱼皮8 小时前
我做了个 AI 绘图工具,不用写提示词,一键复刻爆款图片!
java·计算机·ai·程序员·互联网·网站
特立独行的猫a9 小时前
uni-app x跨平台开发实战:开发鸿蒙HarmonyOS影视票房榜组件完整实现过程
华为·uni-app·harmonyos·轮播图·uniapp-x