第九节HarmonyOS 常用基础组件11-TextPicker

1、描述

滑动选择文本内容的组件。

2、接口

TextPicker(options?: {range: string\[\]|Resource, selected?: number, value?: string})

3、参数

|----------|----------------------|----|------------------------------------|
| 参数名称 | 参数类型 | 必填 | 描述 |
| range | string\[\]|Resource | 是 | 选择器的数据。 |
| selected | number | 否 | 设置默认选中项在数组中的索引。默认值:0。 |
| value | string | 否 | 设置默认选中项的值,优先级低于selected。默认值:第一个元素。 |

4、属性

除了支持通用属性外,还支持:

defaultPickerItemHeight - number|string - 设置picker各个选择项的高度。

5、事件

onAccept - 点击弹窗中的"确定"按钮时,触发该回调。

onCancel - 点击弹窗中的"取消"按钮时,触发该回调。

onChange - 滑动选中TextPicker文本后,触发该回调。

6、实例

复制代码
import router from '@ohos.router'

@Entry
@Component
struct TextPickerPage {
  @State message: string = '滑动选择文本内容的组件。'
  private pickerList: string[] = ['Android', 'IOS', 'Flutter', 'KMM']

  build() {
    Row() {
      Scroll() {
        Column() {
          Text(this.message)
            .fontSize(20)
            .fontWeight(FontWeight.Bold)
            .width('96%')

          Blank(20)
          TextPicker({ range: this.pickerList })
            .width('96%')
            .height(200)
            .onAccept((value: string, index: number) => {
              console.log("zdm", "TextPicker - onAccept value = " + value)
            })
            .onCancel(() => {
              console.log("zdm", "TextPicker - onCancel")
            })
            .onChange((value: string, index: number) => {
              console.log("zdm", "TextPicker - onChange value = " + value)
            })

          Blank(20)
          Button("TextPicker文本文档")
            .fontSize(20)
            .backgroundColor('#007DFF')
            .width('96%')
            .onClick(() => {
              // 处理点击事件逻辑
              router.pushUrl({
                url: "pages/baseComponent/textPicker/TextPickerDesc",
              })
            })

        }
        .width('100%')
      }
    }
    .padding({ top: 12, bottom: 12 })
  }
}

7、效果图

相关推荐
想你依然心痛1 小时前
HarmonyOS ArkUI Swiper 轮播组件深度封装与工程化实践
swiper·arkui·lazyforeach·轮播组件·自动播放·指示器定制·一多适配
想你依然心痛1 小时前
HarmonyOS ArkUI Scroll 滚动容器组件深度封装与工程化实践
arkui·下拉刷新·scroll·上拉加载·lazyforeach·滚动容器·嵌套滚动
程序员黑豆3 小时前
鸿蒙应用开发:@Provider 与 @Consumer 跨组件双向同步详解
前端·harmonyos
程序员黑豆4 小时前
鸿蒙应用开发之跨组件传参:@Provide 与 @Consume 跨层级数据同步详解
前端·harmonyos
懿路向前4 小时前
【HarmonyOS学习笔记】2026-07-30 | 小艺开放平台智能体接入实战
笔记·学习·harmonyos
大锅盖14 小时前
HarmonyOS ArkTS 的新手练手样例:从 Text 和 Button 开始,做一个会变化的计数页面
华为·harmonyos
袁震6 小时前
小图传输,大图呈现——用 HarmonyOS 7 端侧 AI 实现 4 倍图像超分重建
人工智能·华为·harmonyos
结网的兔子7 小时前
【前端开发】Web端迁移至 uni-app 及鸿蒙扩展方案对比
前端·uni-app·harmonyos
落叶飘飘s7 小时前
餐饮服务与软件创新的融合:解析海底捞 APP 的 Flutter 鸿蒙开发之路
flutter·华为·harmonyos
qizayaoshuap9 小时前
# HarmonyOS ArkTS 滑动删除列表实战(三):交互式列表增删操作
华为·harmonyos