HarmonyOS toolBar,数组设置4个,为什么只显示三个呢

@Entry
@Component
struct MainPage {
  @State currentIndex: number = 0
  @State Build: Array<Object> = [
    {
      text: '首页',
      num: 0,
      imageYes: $r('app.media.home_yes'),
      imageNo: $r('app.media.home_no')
    },
    {
      text: '视频',
      num: 1,
      imageYes: $r('app.media.home_yes'),
      imageNo: $r('app.media.video_home_icn')
    },
    {
      text: '商城',
      num: 2,
      imageYes: $r('app.media.shop_yes'),
      imageNo: $r('app.media.shop_no')
    },
    {
      text: '我的',
      num: 3,
      imageYes: $r('app.media.user_yes'),
      imageNo: $r('app.media.user_no')
    },
  ]
  @Builder
  NavigationTitle() {
    Column() {
      Text('Title')
        .fontColor('#182431')
        .fontSize(30)
        .lineHeight(41)
        .fontWeight(700)
      Text('subtitle')
        .fontColor('#182431')
        .fontSize(14)
        .lineHeight(19)
        .opacity(0.4)
        .margin({ top: 2, bottom: 20 })
    }.alignItems(HorizontalAlign.Start)
  }
  @Builder
  NavigationMenus() {
    Row() {
      Image($r('app.media.home_no'))
        .width(24)
        .height(24)
      Image($r('app.media.video_home_icn'))
        .width(24)
        .height(24)
        .margin({ left: 24 })
      Image($r('app.media.shop_no'))
        .width(24)
        .height(24)
        .margin({ left: 24 })
      Image($r('app.media.user_no'))
        .width(24)
        .height(24)
        .margin({ left: 24 })
    }
  }
  @Builder
  NavigationToolbar() {
    Row() {
      ForEach(this.Build, item => {
        Column() {
          Image(this.currentIndex == item.num ? item.imageYes : item.imageNo)
            .width(24)
            .height(24)
          Text(item.text)
            .fontColor(this.currentIndex == item.num ? '#007DFF' : '#182431')
            .fontSize(10)
            .lineHeight(14)
            .fontWeight(500)
            .margin({ top: 3 })
        }.width(104).height(56)
        .onClick(() => {
          this.currentIndex = item.num
        })
      })
    }.margin({ left: 24 })
  }
  build() {
    Column() {
      Navigation() {
      }
      .titleMode(NavigationTitleMode.Full)
      .toolBar(this.NavigationToolbar)
      .hideToolBar(false)
      .onTitleModeChange((titleModel: NavigationTitleMode) => {
        console.info('titleMode' + titleModel)
      })
    }.width('100%').height('100%').backgroundColor('#F1F3F5')
  }
}
HarmonyOS
18h前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa
@Builder NavigationToolbar() {
  Flex({direction:FlexDirection.Row,justifyContent:FlexAlign.SpaceAround}) {
    ForEach(this.Build, (item: TabItem) => {
      Row(){
        Image(this.currentIndex == item.num ? item.imageYes : item.imageNo)
          .width(24)
          .height(24)
        Text(item.text)
          .fontColor(Color.Red)
          .fontSize(10)
          .lineHeight(14)
          .fontWeight(500)
          .margin({ top: 3 })
      }.height(56)
      .onClick(() => {
        this.currentIndex = item.num
      })
    })
  }
}
分享
微博
QQ
微信
回复
16h前
相关问题
三个设备如何同时实现多端协同?
5448浏览 • 1回复 待解决
HarmonyOS SaveButton只显示图片
402浏览 • 1回复 待解决
WantAgentInfo中的wants为什么数组
1845浏览 • 1回复 待解决