ITPub博客

首页 > 架构设计 > 操作系统 > 【HarmonyOS NEXT】【自定义组件】下拉选择框

【HarmonyOS NEXT】【自定义组件】下拉选择框

投稿 操作系统 作者:ITPUB鸿蒙小助手 时间:2025-12-04 17:40:28 619 删除 编辑

踏入鸿蒙世界的敲门砖,标志着您在技术征途上的全新起点,提升就业竞争力,获得行业 认可,点亮职业成长先机,快人一步抢占未来应用开发赛道! https://developer.huawei.com/consumer/cn/training/dev-cert-detail/101666948302721398?ha_source=hmosclass-itpub&ha_sourceId=70000033

 

背景

在 项目中遇到了一个下拉选择框组件的开发需求:

l   选择框的三角箭头需要在点击时跟随转动。

l   弹出的选择框需要基本满框弹出。

l   选择框显示选择的项的方式为后面加一个 ✔ 的符号或图片。

l   选择框选择不是第一个默认的时候,需要提供一个不同颜色的显示提醒用户。

l   选择框需要提供方法,实现选择第一列的数值的时候,可以格式化成其他的文字内容。

根据 测试发现,系统自带的Select组件的自定义无法满足想要的效果,因此根据多次的测试后,选择使用Toggle+bindMenu的方式,实现对组件的最大自定义封装。并提供了Option设置类,代码复制后可以直接使用。

实现效果

请添加图片描述

 

代码文件

SelectDemo

调用使用页面文件

ToggleMenuOption

自定义组件配置类,提供了是否显示菜单,选中字符、菜单索引等组件内容设置,大家可以根据自己的需求修改当前类的内容,可以添加和删减

ToggleMenu

封装组件

总结

上述文章是对下拉框选择组件的一种封装和实现的方式,其中也遇到了一些问题,比如说:

l   菜单组件的宽度设置成“100%”的时候,菜单会自动内缩一段距离,然后也没有办法进行调整,如果弹出菜单内容的宽度也设置成100%的话,会出现超出界面不显示的问题。(希望后面会解决这个问题)

希望这篇文章对大家可以有所帮助,或者有什么可以改进的地方,欢迎大家交流 (转载自CSDN,作者:baobao熊)

 


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70047792/viewspace-3104420/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2021-11-18

  • 博文量
    401
  • 访问量
    296692