当前位置: 首页 > news >正文

鸿蒙开发-UI-组件导航-Navigation

鸿蒙开发-UI-组件

鸿蒙开发-UI-组件2

鸿蒙开发-UI-组件3

鸿蒙开发-UI-气泡/菜单

鸿蒙开发-UI-页面路由

文章目录

目录

一、基本概念

二、页面显示模式

1.自适应模式

2.单页面模式

3.分栏模式

三、标题栏模式

1.Mini模式

2.Full模式

四、菜单栏

五、工具栏

六、案例

总结


前言

上文详细学习了鸿蒙开发UI页面跳转的相关知识,学习页面路由router基本概念,使用方法,页面路由两种跳转模式和两种实例模式的区别以及不同跳转模式和实例模式组合下的使用场景,学习了页面跳转后普通返回和带弹窗的返回使用方法,学习了页面带数据的跳转方式以及目标页面接收数据的方法,本文将学习鸿蒙UI开发组件导航Navigation

一、基本概念

二、页面显示模式

Navigation组件通过mode属性设置页面的显示模式

1.自适应模式

Navigation组件默认为自适应模式,此时mode属性为NavigationMode.Auto。自适应模式下,当设备宽度大于520vp时,Navigation组件采用分栏模式,反之采用单页面模式

Navigation() {...
}
.mode(NavigationMode.Auto)

2.单页面模式

将mode属性设置为NavigationMode.Stack,Navigation组件即可设置为单页面显示模式

单页面布局如下图所示

3.分栏模式

将mode属性设置为NavigationMode.Split,Navigation组件即可设置为分栏显示模式

分栏布局如下图所示

三、标题栏模式

标题栏在界面顶部,用于呈现界面名称和操作入口,Navigation组件通过titleMode属性设置标题栏模式

1.Mini模式

普通型标题栏,用于一级页面不需要突出标题的场景

Navigation() {...
}
.titleMode(NavigationTitleMode.Mini)

2.Full模式

强调型标题栏,用于一级页面需要突出标题的场景

Navigation() {...
}
.titleMode(NavigationTitleMode.Full)

四、菜单栏

菜单栏位于Navigation组件的右上角,开发者可以通过menus属性进行设置。menus支持Array<NavigationMenuItem>和CustomBuilder两种参数类型。使用Array<NavigationMenuItem>类型时,竖屏最多支持显示3个图标,横屏最多支持显示5个图标,多余的图标会被放入自动生成的更多图标

设置了3个图标的菜单栏

Navigation() {...
}
.menus([{value: "", icon: "./image/ic_public_search.svg", action: ()=>{}},{value: "", icon: "./image/ic_public_add.svg", action: ()=>{}},{value: "", icon: "./image/ic_public_add.svg", action: ()=>{}}])

设置了4个图标的菜单栏

Navigation() {...
}
.menus([{value: "", icon: "./image/ic_public_search.svg", action: ()=>{}},{value: "", icon: "./image/ic_public_add.svg", action: ()=>{}},{value: "", icon: "./image/ic_public_add.svg", action: ()=>{}},{value: "", icon: "./image/ic_public_add.svg", action: ()=>{}}])

五、工具栏

工具栏位于Navigation组件的底部,开发者可以通过toolBar属性进行设置

Navigation() {...
}
.toolBar({items:[{value: "func", icon: "./image/ic_public_highlights.svg", action: ()=>{}},{value: "func", icon: "./image/ic_public_highlights.svg", action: ()=>{}},{value: "func", icon: "./image/ic_public_highlights.svg", action: ()=>{}}]})

六、案例

代码示例

@Entry
@Component
struct PageNavi {private arr: number[] = [1, 2, 3];build() {Column() {Navigation() {TextInput({ placeholder: 'search...' }).width("90%").height(40).backgroundColor('#FFFFFF')List({ space: 12 }) {ForEach(this.arr, (item) => {ListItem() {NavRouter() {Text("NavRouter" + item).width("100%").height(72).backgroundColor('#FFFFFF').borderRadius(24).fontSize(16).fontWeight(500).textAlign(TextAlign.Center)NavDestination() {Text("NavDestinationContent" + item)}.title("NavDestinationTitle" + item).margin({bottom: 20})}}}, item => item)}.width("90%").margin({ top: 12 })}.title("主标题").titleMode(NavigationTitleMode.Mini).mode(NavigationMode.Auto).menus([{value: "",  icon: "pages/image/icon.png", action: ()=> {}},{value: "",  icon: "pages/image/icon.png", action: ()=> {}},{value: "",  icon: "pages/image/icon.png", action: ()=> {}},{value: "",  icon: "pages/image/icon.png", action: ()=> {}},]).toolBar({items: [{value: "func",  icon: "pages/image/icon.png",action: ()=> {}},{value: "func",  icon: "pages/image/icon.png",action: ()=> {}},{value: "func",  icon: "pages/image/icon.png",action: ()=> {}}]})}.height('100%').width('100%').backgroundColor('#F1F3F5')}
}

页面渲染


总结

http://www.lryc.cn/news/292245.html

相关文章:

  • Codeforces Round 922 (Div. 2)(A~D)补题
  • Seata下载与配置、启动
  • 什么是TCP三次握手、四次挥手?
  • C++程序在开机自启和定时器执行时遇到的问题和解决方法
  • R17 extended DRX(eDRX)
  • Debezium发布历史102
  • 探索自然语言处理在改善搜索引擎、语音助手和机器翻译中的应用
  • echarts:获取省、市、区/县、镇的地图数据
  • Java_简单模拟实现ArrayList_学习ArrayList
  • 动手学深度学习(一)深度学习介绍2
  • vmware网络配置,VMware的三种网络模式详解与配置
  • 【Ubuntu】安装hbase
  • ubuntu16.04环境轻松安装和应用opencv4.9.0(基于源码编译)
  • FastBee开源物联网平台2.0开源版发布啦!!!
  • 【NeRF和NLP】一些观察感悟,碎碎念
  • Python程序设计 基础数据类型
  • 浅谈安科瑞智能照明系统在马来西亚国家石油公司项目的应用
  • Java面对对象
  • 代码随想录算法训练营|day24
  • 嵌入式学习日记 16
  • 【Vue.js设计与实现】第一篇:框架设计概览-阅读笔记(完结)
  • 数据结构—动态查找表
  • Hbase-2.4.11_hadoop-3.1.3集群_大数据集群_SSH修改默认端口22为其他端口---记录025_大数据工作笔记0185
  • c++学习第十四讲---STL常用容器---vector容器
  • 数据结构-内部排序
  • Qt加载网页崩溃 ASSERT:“m_adapterClient“ in file ...
  • 合约短线高胜率策略-扭转乾坤指标使用说明
  • DAY37:贪心算法738
  • 计算机中的缓存与内存
  • 2.1总结