鸿蒙5.0开发进阶:UI框架-ArkTS组件(ToolBar)

鸿蒙5.0开发:ArkTS组件ToolBar详解

往期鸿蒙5.0全套实战文章必看:(文中附带全栈鸿蒙5.0学习资料)


ToolBar

工具栏用于展示针对当前界面内容的操作选项,在界面底部显示。底部最多显示5个入口,超过则收纳入“更多”子项中,在最右侧显示。

说明

该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

导入模块

import { ToolBar, ToolBarOptions } from '@kit.ArkUI'

子组件

属性

支持通用属性

ToolBar

Toolbar({toolBarList: ToolBarOptions, activateIndex?: number, controller: TabsController})

装饰器类型:@Component

元服务API: 从API version 11开始,该接口支持在元服务中使用。

系统能力: SystemCapability.ArkUI.ArkUI.Full

参数:

名称参数类型必填装饰器类型说明
toolBarListToolBarOptions@ObjectLink工具栏列表。
activateIndexnumber@Prop

激活态的子项。

默认值:-1。

controllerTabsController-筛选器的样式类型。

ToolBarOptions

继承于 Array<ToolBarOption>

元服务API: 从API version 11开始,该接口支持在元服务中使用。

ToolBarOption

元服务API: 从API version 11开始,该接口支持在元服务中使用。

名称类型必填说明
contentResourceStr工具栏子项的文本。
action() => void工具栏子项点击事件。
iconResource工具栏子项的图标。
stateItemState工具栏子项的状态,默认为ENABLE。

ItemState

元服务API: 从API version 11开始,该接口支持在元服务中使用。

名称说明
ENABLE1工具栏子项为正常可点击状态。
DISABLE2工具栏子项为不可点击状态。
ACTIVATE3工具栏子项为激活状态,可点击。

事件

支持通用事件

示例

该示例展示了工具栏子项state属性分别设置ENABLE、DISABLE、ACTIVATE状态的不同显示效果。

import { ToolBar, ToolBarOptions, ItemState } from '@kit.ArkUI';

@Entry
@Component
struct Index {
  @State toolbarList: ToolBarOptions = new ToolBarOptions();

  aboutToAppear() {
    this.toolbarList.push({
      content: '剪贴我是超超超超超超超超超长样式',
      icon: $r('sys.media.ohos_ic_public_share'),
      action: () => {
      },
    })
    this.toolbarList.push({
      content: '拷贝',
      icon: $r('sys.media.ohos_ic_public_copy'),
      action: () => {
      },
      state: ItemState.DISABLE
    })
    this.toolbarList.push({
      content: '粘贴',
      icon: $r('sys.media.ohos_ic_public_paste'),
      action: () => {
      },
      state: ItemState.ACTIVATE
    })
    this.toolbarList.push({
      content: '全选',
      icon: $r('sys.media.ohos_ic_public_select_all'),
      action: () => {
      },
    })
    this.toolbarList.push({
      content: '分享',
      icon: $r('sys.media.ohos_ic_public_share'),
      action: () => {
      },
    })
    this.toolbarList.push({
      content: '分享',
      icon: $r('sys.media.ohos_ic_public_share'),
      action: () => {
      },
    })
  }

  build() {
    Row() {
      Stack() {
        Column() {
          ToolBar({
            activateIndex: 2,
            toolBarList: this.toolbarList,
          })
        }
      }
      .align(Alignment.Bottom)
      .width('100%')
      .height('100%')
    }
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值