鸿蒙5.0版开发:ArkTS高级组件-@ohos.arkui.advanced.EditableTitleBar (编辑页面标题栏)

264 篇文章 0 订阅
260 篇文章 0 订阅

往期鸿蒙全套实战文章必看:


@ohos.arkui.advanced.EditableTitleBar (编辑页面标题栏)

编辑型标题栏,适用于多选界面或者内容的编辑界面,一般采取左叉右勾的形式。

说明:

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

导入模块

import { EditableTitleBar } from "@ohos.arkui.advanced.EditableTitleBar"

子组件

属性

不支持通用属性

EditableTitleBar

EditableTitleBar({leftIconStyle: EditableLeftIconType, imageItem?: EditableTitleBarItem, title: ResourceStr, subtitle?: ResourceStr, menuItems?: Array<EditableTitleBarMenuItem>, isSaveIconRequired?: boolean, onSave?: () => void, onCancel?: () =>void, options?: EditableTitleBarOptions})

装饰器类型:@Component

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

参数:

名称参数类型必填说明
leftIconStyleEditableLeftIconType左侧按钮类型。
原子化服务API: 从API version 11开始,该接口支持在原子化服务中使用。
imageItem12+EditableTitleBarItem用于左侧头像的单个菜单项目。
titleResourceStr标题。
原子化服务API: 从API version 11开始,该接口支持在原子化服务中使用。
subtitle12+ResourceStr副标题。
menuItemsArray<EditableTitleBarMenuItem>右侧菜单项目列表。
原子化服务API: 从API version 11开始,该接口支持在原子化服务中使用。
isSaveIconRequired12+boolean是否需要右侧的保存按钮。
默认值:true,表示需要右侧的保存按钮。
onSave() => void保存时的动作闭包。
原子化服务API: 从API version 11开始,该接口支持在原子化服务中使用。
onCancel() => void当左侧按钮类型为 Cancel,触发取消时的动作闭包。
从API version 12开始,当左侧按钮类型为 Back,触发返回时的动作闭包。
原子化服务API: 从API version 11开始,该接口支持在原子化服务中使用。
options12+EditableTitleBarOptions标题样式。

EditableLeftIconType

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

名称说明
Back0返回按钮。
Cancel1取消按钮。

EditableTitleBarMenuItem

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

名称类型必填说明
valueResourceStr图标资源。
isEnabledboolean是否启用,默认禁用。
isEnabled为true时,表示为启用。
isEnabled为false时,表示为禁用。
action() => void触发时的动作闭包。

EditableTitleBarItem12+

类型说明
EditableTitleBarMenuItem左侧头像的单个菜单类型。

EditableTitleBarOptions12+

名称类型必填说明
backgroundColorResourceStr标题栏背景色。
backgroundBlurstyleBlurStyle标题栏背景模糊样式。
safeAreaTypesArray <SafeAreaType>非必填,配置扩展安全区域的类型。
默认值: [SafeAreaType.SYSTEM]
safeAreaEdgesArray <SafeAreaEdge>非必填,配置扩展安全区域的方向。
默认值: [SafeAreaEdge.TOP]

事件

不支持通用事件

示例

示例1

// 该示例主要演示EditableTitleBar设置左侧图标、主标题及自定义右侧图标区的效果。
import { EditableLeftIconType } from "@ohos.arkui.advanced.EditableTitleBar";
import { EditableTitleBar } from "@ohos.arkui.advanced.EditableTitleBar";
import promptAction from '@ohos.promptAction';

@Entry
@Component
struct Index {
  build() {
    Row() {
      Column() {
        Divider().height(2).color(0xCCCCCC)
        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Cancel,
          title: '编辑页面',
          menuItems: [],
          onCancel: () => {
            promptAction.showToast({ message: 'on cancel' });
          },
          onSave: () => {
            promptAction.showToast({ message: 'on save' });
          }
        })
        Divider().height(2).color(0xCCCCCC)
        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Back,
          title: '编辑页面',
          menuItems: [
            {
              value: $r('app.media.ic_public_reduce'),
              isEnabled: false,
              action: () => {
                promptAction.showToast({ message: 'show toast index 2' });
              }
            }
          ],
          onSave: () => {
            promptAction.showToast({ message: 'on save' })
          }
        })
        Divider().height(2).color(0xCCCCCC)
      }.width('100%')
    }.height('100%')
  }
}

示例2

// 该示例主要演示EditableTitleBar设置背景模糊、头像和取消右侧保存图标的效果。
import { EditableLeftIconType, EditableTitleBar } from '@ohos.arkui.advanced.EditableTitleBar';
import promptAction from '@ohos.promptAction';
import router from '@ohos.router';

@Entry
@Component
struct Index {
  build() {
    Row() {
      Column() {
        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Cancel,
          title: '主标题',
          subtitle: '副标题',
          // 设置背景模糊效果
          options: {
            backgroundBlurStyle: BlurStyle.COMPONENT_THICK,
          },
          onSave: () => {
            promptAction.showToast({ message: "on save" });
          },
        })

        Divider().height(2).color(0xCCCCCC);

        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Cancel,
          title: '主标题',
          subtitle: '副标题',
          // 取消右侧保存按钮
          isSaveIconRequired: false, 
        })

        Divider().height(2).color(0xCCCCCC);

        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Back,
          title: '主标题',
          subtitle: '副标题',
          isSaveIconRequired: false,
          onCancel: () => {
            router.back();
          },
        })

        Divider().height(2).color(0xCCCCCC);

        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Back,
          title: '主标题',
          subtitle: '副标题',
          menuItems: [
            {
              value: $r('sys.media.ohos_ic_public_remove'),
              isEnabled: true,
              action: () => {
                promptAction.showToast({ message: "show toast index 1" });
              }
            }
          ],
          isSaveIconRequired: false,
          // 点击左侧Back图标,触发的动作。
          onCancel: () => {
            router.back();
          },
        })

        Divider().height(2).color(0xCCCCCC);

        EditableTitleBar({
          leftIconStyle: EditableLeftIconType.Back,
          title: '主标题',
          subtitle: '副标题',
          // 设置可点击头像
          imageItem: {
            value: $r('app.media.img'),
            isEnabled: true,
            action: () => {
              promptAction.showToast({ message: "show toast index 2" });
            }
          },
          // 右侧图标配置
          menuItems: [
            {
              value: $r('sys.media.ohos_ic_public_remove'),
              isEnabled: true,
              action: () => {
                promptAction.showToast({ message: "show toast index 3" });
              }
            }
          ],
          onCancel: () => {
            router.back();
          },
        })
      }
    }
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值