HarmonyOS NavDestination组件自定义Title时自带返回按钮如何隐藏

使用NavDestination组件时,自带的返回按钮隐藏不掉

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

NavDestination可以设置hideTitleBar(true)隐藏标题栏,再自定义一个text组件

DEMO如下:

import { window } from '@kit.ArkUI'

@Builder
export function titleBuilder(backIcon: Resource, title: string, pageInfos: NavPathStack) {
  Row() {
    Image(backIcon)
      .onClick(() => {
        pageInfos.pop()
      })
      .objectFit(ImageFit.Contain)
      .width('10%')
      .height('70%')
    Text(title)
  }
  .width('100%')
  .height('10%')
  .backgroundColor(Color.Orange)
}

@Component
export struct PageOneTmp {
  @Consume('pageInfos') pageInfos: NavPathStack;
  @State areaCodeSelectViewIsPresent: boolean = false

  build() {
    NavDestination() {
      Column() {
        titleBuilder($r('app.media.startIcon'), '返回', this.pageInfos)
      }
      .justifyContent(FlexAlign.Start)
      .width('100%')
      .height('100%')

    }
    .hideTitleBar(true)

  }
}

@Entry
@Component
struct Index {
  @Provide('pageInfos') pageInfos: NavPathStack = new NavPathStack()
  @State topSafeHeight: number = 0

  @Builder
  PageMap(name: string) {
    if (name === 'pageOne') {
      PageOneTmp()
    }
  }

  build() {
    Navigation(this.pageInfos) {
      Column() {
        Button('pushPath')
          .onClick(() => {
            this.pageInfos.pushPath({ name: 'pageOne' })
          })
      }
    }
    .navDestination(this.PageMap)
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
返回按钮是否可以自定义事件?
252浏览 • 1回复 待解决
HarmonyOS picker组件如何隐藏拍照按钮
44浏览 • 1回复 待解决
HarmonyOS NavDestinationtitle怎么居中
84浏览 • 1回复 待解决
HarmonyOS 定义自定义组件
57浏览 • 1回复 待解决