鸿蒙(HarmonyOS)下拉选择控件

一、操作环境

操作系统: Windows 11 专业版、IDE:DevEco Studio 3.1.1 Release、SDK:HarmonyOS 3.1.0(API 9)

二、效果图

三、代码

复制代码
SelectPVComponent.ets
TypeScript 复制代码
@Component
export default struct SelectPVComponent {
  @Link selection: SelectOption[]
  private callback: (index: number, value?: string) => void
  private text: string

  build() {
    Row() {
      Image($r('app.media.required')).margin({ bottom: 5 }).width('5%')

      Text(this.text)
      //设置SelectOption对象参数
      Select(this.selection)
        .selected(0)
        .value('请选择')
        .font({ size: 16, weight: 500 })
        .selectedOptionFont({ size: 16, weight: FontWeight.Regular })
        .optionFont({ size: 16, weight: 400 })
        .onSelect((index: number, value: string) => {
          this.callback?.(index, value)
        })
    }.width('100%')
  }
}

在page中的调用方式:

TypeScript 复制代码
//问题程度
//若需要选项前带图标。可自定添加icon:{ value: '一般',icon:'xxx' }
@State issueExtent: SelectOption[] = [{ value: '一般' }, { value: '严重' }, { value: '紧要' }]

build() {
    Column() {
    SelectPVComponent({ text: '问题程度:',
            selection: $issueExtent,
            callback: (index: number, value: string) => {
              console.info('问题程度:' + index + ': ' + value)
            } })
    }
}
相关推荐
Damon小智8 小时前
鸿蒙分布式数据服务(DDS)原理与企业同步实战
分布式·华为·harmonyos
猫林老师15 小时前
HarmonyOS自动化测试与持续集成实战指南
ci/cd·华为·harmonyos
寂然如故15 小时前
拥抱未来:HarmonyOS NEXT 开发新范式深度解析
华为·harmonyos
国霄15 小时前
(2)Kotlin/Js For Harmony——如何复用ViewModel
harmonyos
星释15 小时前
鸿蒙Flutter三方库适配指南:08.联合插件开发
flutter·华为·harmonyos
爱笑的眼睛1115 小时前
HarmonyOS WaterFlow瀑布流布局深度解析:从原理到性能优化
华为·harmonyos
星释15 小时前
鸿蒙Flutter三方库适配指南:06.插件适配原理
flutter·华为·harmonyos
高沉16 小时前
2025华为海思数字IC面经
华为·fpga开发
Damon小智19 小时前
鸿蒙元服务深度实践:跨端唤醒与状态共享的设计模式
华为·设计模式·harmonyos
广然20 小时前
跨厂商(华为 & H3C)防火墙 GRE 隧道部署
网络·华为·防火墙·h3c