Select
提供下拉选择菜单,可以让用户在多个选项之间选择。
说明:
开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
子组件
无
接口
Select(options: Array<[SelectOption]>)
SelectOption对象说明
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | [ResourceStr] | 是 | 下拉选项内容。 |
icon | [ResourceStr] | 否 | 下拉选项图片。 |
属性
除支持[通用属性]外,还支持以下属性:
名称 | 参数类型 | 描述 |
---|---|---|
selected | number | [Resource]11+ |
value | string | [Resource]11+ |
font | [Font] | 设置下拉按钮本身的文本样式。 默认值: { size: '16fp', weight: FontWeight.Medium } |
fontColor | [ResourceColor] | 设置下拉按钮本身的文本颜色。 默认值:'#E5182431' |
selectedOptionBgColor | [ResourceColor] | 设置下拉菜单选中项的背景色。 默认值:'#33007DFF' |
selectedOptionFont | [Font] | 设置下拉菜单选中项的文本样式。 默认值: { size: '16fp', weight: FontWeight.Regular } |
selectedOptionFontColor | [ResourceColor] | 设置下拉菜单选中项的文本颜色。 默认值:'#ff007dff' |
optionBgColor | [ResourceColor] | 设置下拉菜单项的背景色。 默认值:'#ffffffff' |
optionFont | [Font] | 设置下拉菜单项的文本样式。 默认值: { size: '16fp', weight: FontWeight.Regular } |
optionFontColor | [ResourceColor] | 设置下拉菜单项的文本颜色。 默认值:'#ff182431' |
space10+ | [Length] | 设置下拉菜单项的文本与箭头之间的间距。**说明:**不支持设置百分比。 |
arrowPosition10+ | [ArrowPosition] | 设置下拉菜单项的文本与箭头之间的对齐方式。 默认值:ArrowPosition.END |
menuAlign10+ | alignType: [MenuAlignType], offset?: [Offset] | 设置下拉按钮与下拉菜单间的对齐方式。 -alignType: 对齐方式类型,必填。 默认值:MenuAlignType.START -offset: 按照对齐类型对齐后,下拉菜单相对下拉按钮的偏移量。 默认值:{dx: 0, dy: 0} |
ArrowPosition10+枚举说明
名称 | 描述 |
---|---|
END10+ | 文字在前,箭头在后。 |
START10+ | 箭头在前,文字在后。 |
MenuAlignType10+枚举说明
名称 | 描述 |
---|---|
START | 按照语言方向起始端对齐。 |
CENTER | 居中对齐。 |
END | 按照语言方向末端对齐。 |
事件
名称 | 功能描述 |
---|---|
onSelect(callback: (index: number, value?: string) => void) | 下拉菜单选中某一项的回调。 index:选中项的索引。 value:选中项的值。HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿 |
示例
// xxx.ets
@Entry
@Component
struct SelectExample {
@State text: string = "TTTTT"
@State index: number = 2
@State space: number = 8
@State arrowPosition: ArrowPosition = ArrowPosition.END
build() {
Column() {
Select([{ value: 'aaa', icon: "/common/public_icon.svg" },
{ value: 'bbb', icon: "/common/public_icon.svg" },
{ value: 'ccc', icon: "/common/public_icon.svg" },
{ value: 'ddd', icon: "/common/public_icon.svg" }])
.selected(this.index)
.value(this.text)
.font({ size: 16, weight: 500 })
.fontColor('#182431')
.selectedOptionFont({ size: 16, weight: 400 })
.optionFont({ size: 16, weight: 400 })
.space(this.space)
.arrowPosition(this.arrowPosition)
.menuAlign(MenuAlignType.START, {dx:0, dy:0})
.onSelect((index:number, text?: string | undefined)= >{
console.info('Select:' + index)
this.index = index;
if(text){
this.text = text;
}
})
}.width('100%')
}
}
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
组件
+关注
关注
1文章
512浏览量
17846 -
鸿蒙
+关注
关注
57文章
2363浏览量
42887
发布评论请先 登录
相关推荐
HarmonyOS/OpenHarmony应用开发-ArkTS的声明式开发范式
轨迹。状态与数据管理状态数据管理作为基于ArkTS的声明式开发范式的特色,通过功能不同的装饰器给开发者提供了清晰的页面更新渲染流程和管道。状态管理包括UI组件状态和应用程序状态,两者协
发表于 01-17 15:09
鸿蒙ArkTS声明式组件:PatternLock
图案密码锁组件,以九宫格图案的方式输入密码,用于密码验证场景。手指在PatternLock组件区域按下时开始进入输入状态,手指离开屏幕时结束输入状态完成密码输入。
评论