#夏日挑战赛#OpenHarmony应用开发之页面导航(Navigation)组件 原创 精华
页面导航(Navigation)详解
Navigation
一般作为Page页面的根容器,通过属性设置来展示页面的标题、它提供了一系列属性方法来设置页面的标题栏、工具栏以及菜单栏的各种展示样式。 Navigation
除了提供了默认的展示样式属性外,它还提供了 CustomBuilder
模式来自定义展示样式,本节将介绍一下 Navigation
各属性的简单用法以及使用 CustomBuilder
实现自定义样式。
Navigation定义介绍
Navigation
的定义不需要传递相关参数,我们先看下 Navigation
的最简单样例:
运行结果如下图所示:
由运行结果可知,在默认情况下, Navigation
的样式是一个带有返回箭头的标题栏组成的。
Navigation属性介绍
我们可以点开它的方法看一下,首先他也是继承了CommonMethod,然后对其进行自定义。
title:设置导航栏的标题,当参数类型为 string
时,可以直接设置标题,但样式不支修改;当参数为 CustomBuilder
时,可以自定义标题样式。
-
参数类型为
string
,简单样例如下所示:样例运行结果如下图所示:
-
参数类型为
CustomBuilder
,简单样例如下所示:样例运行结果如下图所示(为了观察的更细致,我只截了上半部分):
subTitle:设置页面的副标题,简单样例如下所示:
样例运行结果如下图所示:
hideBackButton:是否隐藏返回按钮,默认情况下不隐藏,简单样例如下所示:
样例运行结果如下图所示:
toolBar:设置工具栏,当参数类型为 object
时,可以直接设置工具栏选项,但样式不支修改;当参数为 CustomBuilder
时,可以自定义标题栏。
-
当参数为
object
类型时,参数需要按照如下格式定义:- value:工具栏单个选项的显示文本。
- icon:工具栏单个选项的图标资源路径。
- action:当前选项被选中时的事件回调。
简单样例如下所示:
样例运行结果如下图所示:
-
当参数为
CustomBuilder
类型时,可以自定义样式,简单样例如下所示:样例运行结果如下图所示:
hideTitleBar、hideToolBar:设置是否显示或者隐藏标题栏、工具栏,简单样例如下所示:
样例运行结果如下图所示:
menus:设置标题栏右上角的菜单项,当参数为 CustomBuilder
时可以自定义菜单项。
-
当参数为
NavigationMenuItem
数组时,参数说明如下:- value:菜单项的显示文本。
- icon:菜单项的显示图标路径。
- action:点击菜单项的事件回调。
简单样例如下所示:
样例运行结果如下图所示:
titleMode: 页面标题栏显示模式,默认为NavigationTitleMode.Free
NavigationTitleMode枚举说明
名称 描述 Free 当内容为可滚动组件时,标题随着内容向上滚动而缩小(子标题的大小不变、淡出)。向下滚动内容到顶时则恢复原样。 Mini 固定为小标题模式(图标+主副标题)。 Full 固定为大标题模式(主副标题)。
Navigation事件介绍
- onTitleModeChange:当
titleMode
为 NavigationTitleMode.Free 时,随着可滚动组件的滑动标题栏模式发生变化时触发此回调。
效果
小结
大家了解完这个组件,是不是对UI开发,有了更加直观的认识,在我看来,只要大家学会了这个组件的使用,那么我相信,大部分的UI都可以实现了。
了 Navigation
组件的基本使用,读者掌握了该组件的使用后可以开发更丰富的 UI 界面了。
这个组件不错哎,使用好了,可以节省代码量
很不错,学习了,绝世好文,前排留名