Modal(模态)
大约 1 分钟约 347 字
Modal(模态)
Modal是一个自定义的模态窗口组件,用于在当前页面上显示一个浮动窗口,可以用于显示表单、提示信息、详细信息等场景。当模态窗口显示时,用户无法与背景页面进行交互,只能与模态窗口内的内容进行交互。在创建Modal时,可传入一个布尔值参数inWindow,表示模态窗口的层级是否为窗口顶级,以及是否和屏幕等大(默认为 false,表示和页面一样大)。
使用注意
inWindow为true时依赖 Native 渲染层能力,端侧版本不满足最低要求时该设置会被忽略,Modal 退化为inWindow = false模式。inWindow默认为false,此时 Modal 尺寸与页面等大;如需自定义尺寸,请在attr中自行设置absolutePosition与size。
属性
支持所有基础属性
事件
支持所有基础事件,此外还支持:
willDismiss 仅鸿蒙
监听系统返回键触发的关闭事件。仅在 inWindow = true 时生效。
| 参数 | 描述 | 类型 |
|---|---|---|
| reason | 关闭原因 | ModalDismissReason |
ModalDismissReason
| 枚举值 | 值 | 描述 |
|---|---|---|
| BackPressed | 0 | 系统返回键触发 |
Modal(inWindow = true) {
event {
willDismiss { reason ->
// reason == ModalDismissReason.BackPressed 时表示用户按下了系统返回键
}
}
}