HarmonyOS:通过组件导航设置自定义区域

一、场景介绍

从6.0.0(20) Beta1版本开始,导航组件新增支持设置标题栏stackBuilder 以及bottomBuilder

当应用开发者需要在标题栏区域增加自定义节点时,例如在标题栏上方区域增加分段按钮,标题栏底部区域增加搜索框、页签时,可以使用标题栏自定义区域设置能力。

二、开发示例

效果图

示例代码 TestUIDesign4.ets

bash 复制代码
import { HdsNavigation, BottomBuilderShowType } from '@kit.UIDesignKit';
@Entry
@Component
struct TestUIDesign4 {
  @Builder
  StackBuilder() { // 自定义StackBuilder组件
    Column() {
      Button("Hello")
    }
    .height(56)
    .justifyContent(FlexAlign.Center)
  }

  @Builder
  BottomBuilder() { // 自定义BottomBuilder组件
    Column() {
      Search().margin({ left: 16, right: 16 })
    }
    .width('100%')
    .height(56)
  }

  build() {
    HdsNavigation() { // 创建HdsNavigation组件
    }.titleBar({
      content: {
        // 设置HdsNavigation组件内容区
        title: { mainTitle: 'MainTitle', subTitle: 'SubTitle' },
        // 设置HdsNavigation StackBuilder区域
        stackBuilder: (): void => this.StackBuilder(),
        // 设置HdsNavigation BottomBuilder区域,包括设置高度,显示类型
        bottomBuilder: {
          builder: (): void => this.BottomBuilder(),
          height: 56,
          showType: BottomBuilderShowType.DIRECTLY_SHOW
        }
      }
    })
    .backgroundColor(Color.White)
  }
}
相关推荐
贾伟康7 分钟前
【HarmonyOS 7新能力|038】游戏快启工程封装:把接入逻辑放进可维护的分层结构
性能优化·harmonyos·arkts·游戏开发·软件架构
威哥爱编程12 分钟前
HarmonyOS LTPO 帧率实战:别把刷新率锁死 120Hz,expected 按内容填
harmonyos·arkts
威哥爱编程13 分钟前
HarmonyOS 7 Agent A2A 实战:让日程智能体和打车智能体自己谈成一单
华为·harmonyos·arkts
威哥爱编程17 分钟前
HarmonyOS 跨设备互通实战:平板点一下,手机镜头帮你拍照
华为·harmonyos·arkts
贾伟康36 分钟前
【HarmonyOS 7新能力|036】分布式数字身份工程封装:把接入逻辑放进可维护的分层结构
harmonyos·arkts·软件架构·隐私保护·数字身份
HwJack2040 分钟前
【HarmonyOS开发小实践】ArkUI 交互事件与手势:从触摸到组合手势
ui·华为·性能优化·harmonyos
星栖与芯1 小时前
LiteOS-M 切换汇编逐行图解(5):HalPendSV 任务切换的现场搬运(五阶段逐行)
汇编·stm32·嵌入式硬件·harmonyos
马剑威(威哥爱编程)1 小时前
【共创稿事节】HarmonyOS 7 数字身份 DID 实战:TEE 颁发、本人同意、最小化出示
华为·harmonyos
贾伟康1 小时前
【HarmonyOS 7新能力|039】冷启网络预建链工程封装:把接入逻辑放进可维护的分层结构
性能优化·harmonyos·arkts·软件架构·网络优化
星栖与芯11 小时前
LiteOS-M 切换汇编逐行图解(4):中断三件套与 HalTaskSchedule 触发
汇编·stm32·单片机·嵌入式硬件·harmonyos