OpenHarmony组件之TextPicker和 TextTimer

684 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第21天,点击查看活动详情

TextPicker

滚动选择文本的组件。

我们先直接上示例。

// xxx.ets
@Entry
@Component
struct TextPickerExample {
  private select: number = 1
  private fruits: string[] = ['apple1', 'orange2', 'peach3', 'grape4']
​
  build() {
    Column() {
      TextPicker({range: this.fruits, selected: this.select})
        .onChange((value: string, index: number) => {
          console.info('Picker item changed, value: ' + value + ', index: ' + index)
        })
    }
  }
}

接下来我们看一下相关的属性

参数:

  • range:选择器的数据选择列表,必填,支持string[]
  • selected:设置默认选中项在数组中的index值。 默认值:0
  • value:设置默认选中项的值,优先级低于selected。 默认值:第一个元素值,字符串类型。

属性

  • defaultPickerItemHeight:默认Picker内容项元素高度。

事件

  • onChange(callback: (value: string, index: number) => void):滑动选中TextPicker文本内容后,触发该回调。 - value: 当前选中项的文本。 - index: 当前选中项的索引值。

接着我们来了解

TextTimer

通过文本显示计时信息并控制其计时器状态的组件。

接口

TextTimer(options?: { isCountDown?: boolean, count?: number, controller?: TextTimerController })

参数:

参数名参数类型必填参数描述
isCountDownboolean是否倒计时。 默认值:false
countnumber倒计时时间(isCountDown为true时生效),单位为毫秒。最长不超过86400000毫秒(24小时)。 0<count<86400000时,count值为倒计时初始值。否则,使用默认值为倒计时初始值。 默认值:60000
controllerTextTimerControllerTextTimer控制器。

属性

名称参数类型描述
formatstring自定义格式,需至少包含一个HH、mm、ss、SS中的关键字。如使用yy、MM、dd等日期格式,则使用默认值。 默认值:'HH:mm:ss.SS'

事件

名称功能描述
onTimer(event: (utc: number, elapsedTime: number) => void)时间文本发生变化时触发。 utc:Linux时间戳,即自1970年1月1日起经过的毫秒数。 elapsedTime:计时器经过的时间,单位为毫秒。

TextTimerController

TextTimer组件的控制器,用于控制文本计时器。一个TextTimer组件仅支持绑定一个控制器。

导入对象

textTimerController: TextTimerController = new TextTimerController()

start

start()

计时开始。

pause

pause()

计时暂停。

reset

reset()

重置计时器。