鸿蒙开发全局UI方法:【列表选择弹窗】

列表选择弹窗

列表弹窗。

说明:

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

本模块功能依赖UI的执行上下文,不可在UI上下文不明确的地方使用,参见[UIContext]说明。

从API version 10开始,可以通过使用[UIContext]中的[showActionSheet]来明确UI的执行上下文。

ActionSheet.show

show(value: { title: string | Resource, subtitle: Resource, message: string | Resource, confirm?: {enabled?: boolean, defaultFocus?: boolean, style?: DialogButtonStyle, value: string | Resource, action:() => void}, cancel?😦)=>void, sheets: Array, autoCancel?:boolean, alignment?: DialogAlignment, offset?: { dx: number | string | Resource; dy: number | string | Resource } })

定义列表弹窗并弹出。

参数:

参数名参数类型必填参数描述
title[Resource]string
subtitle10+[ResourceStr]弹窗副标题。
message[Resource]string
autoCancelboolean点击遮障层时,是否关闭弹窗。 默认值:true 值为true时,点击遮障层关闭弹窗,值为false时,点击遮障层不关闭弹窗。
confirm{ enabled10+?: boolean, defaultFocus10+?: boolean, style10+?: [DialogButtonStyle], value: [ResourceStr], action: () => void }确认按钮的使能状态、默认焦点、按钮风格、文本内容和点击回调。 enabled:点击button是否响应。 默认值:true。 defaultFocus:设置button是否是默认焦点。 默认值:false。 style:设置button的风格样式。 默认值:DialogButtonStyle.DEFAULT。 value:按钮文本内容。 action: 按钮选中时的回调。
cancel() => void点击遮障层关闭dialog时的回调。
alignment[DialogAlignment]弹窗在竖直方向上的对齐方式。 默认值:DialogAlignment.Bottom
offset{ dx: Length, dy: Length }弹窗相对alignment所在位置的偏移量。{ dx: 0, dy: 0 }
sheetsArray设置选项内容,每个选择项支持设置图片、文本和选中的回调。
maskRect10+[Rectangle]弹窗遮蔽层区域,在遮蔽层区域内的事件不透传,在遮蔽层区域外的事件透传。 默认值:{ x: 0, y: 0, width: ‘100%’, height: ‘100%’ }

SheetInfo接口说明

参数名参数类型必填参数描述
title[ResourceStr]选项的文本内容。
icon[ResourceStr]选项的图标,默认无图标显示。
action()=>void选项选中的回调。

DialogButtonStyle10+枚举说明

名称描述
DEFAULT白底蓝字(深色主题:白底=黑底)。
HIGHLIGHT蓝底白字。

示例

@Entry
@Component
struct ActionSheetExample {
  build() {
    Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
      Button('Click to Show ActionSheet')
        .onClick(() => {
          ActionSheet.show({
            title: 'ActionSheet title',
            subtitle: 'ActionSheet subtitle',
            message: 'message',
            autoCancel: true,
            confirm: {
              defaultFocus: true,
              value: 'Confirm button',
              action: () => {
                console.log('Get Alert Dialog handled')
              }
            },
            cancel: () => {
              console.log('actionSheet canceled')
            },
            alignment: DialogAlignment.Bottom,
            offset: { dx: 0, dy: -10 },
            sheets: [
              {
                title: 'apples',
                action: () => {
                  console.log('apples')
                }
              },
              {
                title: 'bananas',
                action: () => {
                  console.log('bananas')
                }
              },
              {
                title: 'pears',
                action: () => {
                  console.log('pears')
                }
              }
            ]
          })
        })
    }.width('100%')
    .height('100%')
  }
}

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在最后

如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:
点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
关注小编,同时可以期待后续文章ing🚀,不定期分享原创知识。
更多鸿蒙最新技术知识点,请关注作者博客:https://gitee.com/li-shizhen-skin/zhihu/blob/master/README.md

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值