OpenHarmony UI开发-组件material-dialogs

2024-09-19 21:54:12 浏览数 (2)

简介

material-dialogs是自定义对话框库。

下载安装

代码语言:shell复制
ohpm install @ohos/material-dialogs

使用说明

  1. 引入文件及代码依赖
代码语言:ts复制
   import { MaterialDialog } from '@ohos/material_dialogs'
  1. 初始化Model数据
代码语言:ts复制
  @State model: MaterialDialog.Model= new MaterialDialog.Model();
  1. 初始化对话框控制器
代码语言:ts复制
   dialogController: CustomDialogController = new CustomDialogController({
   builder: MaterialDialog({
     model: this.model
   }),
   cancel: this.existDialog,
   autoCancel: true,
   alignment: DialogAlignment.Center
   })
  1. 调用Model对应函数并展示目标对话框
代码语言:ts复制
   this.model.reset()
   this.model.message($r('app.string.useOhosLocationServicesPrompt'))
   this.model.positiveButton($r('app.string.agree'), {
    onClick() {
      console.info('ClickCallback when the confirm button is clicked')
    }
   })
   this.model.negativeButton($r('app.string.disagree'), {
    onClick() {
      console.info('ClickCallback when the cancel button is clicked')
    }
   })
   this.model.setScrollHeight(120)
   this.dialogController.open()

接口说明

@State model: MaterialDialog.Model= new MaterialDialog.Model();

  1. 显示图标model.icon()
  2. 显示标题model.title()
  3. 显示描述信息model.message()
  4. 显示确定按钮model.positiveButton()
  5. 显示取消按钮model.negativeButton()
  6. 显示中立按钮model.neutralButton()
  7. 按钮是否堆叠显示model.setStacked()
  8. 显示复选框model.checkBoxPrompt()
  9. 设置按钮是否可用model.setActionButtonEnabled()
  10. 显示列表内容model.listItems()
  11. 显示单选列表内容model.listItemsSingleChoice()
  12. 显示多选列表内容model.listItemsMultiChoice()
  13. 显示输入框model.input()
  14. 显示颜色选择器model.colorChooser()
  15. 显示日期时间选择器model.dateTimePicker()

约束与限制

在下述版本验证通过:

DevEco Studio: 4.0 Beta2(4.0.3.512), SDK: API10 (4.0.10.9)

DevEco Studio: 4.0 Canary1(4.0.0.112), SDK: API10 (4.0.7.2)

目录结构

代码语言:ts复制
|---- material-dialogs
|     |---- entry  # 示例代码文件夹
|     |---- material_dialogs  # material_dialogs库文件夹
|           |---- index.ets  # 对外接口
|           |---- src
|                 |---- main
|                       |---- components
|                             |---- MaterialDialog.ets  # 自定义组件类
|                             |---- ClickCallback.ets  # 点击事件
|                             |---- InputCallback.ets  # 输入内容变化事件
|                             |---- ItemListener.ets  # 条目点击事件
|     |---- README.md  # 安装使用方法                    

写在最后

如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙: