• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# TimePicker
2
3时间选择组件,根据指定参数创建选择器,支持选择小时及分钟。
4
5>  **说明:**
6>
7>  该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8
9
10## 子组件
11
1213
14
15## 接口
16
17TimePicker(options?: {selected?: Date})
18
19默认以24小时的时间区间创建滑动选择器。
20
21**参数:**
22
23| 参数名 | 参数类型 | 必填 | 参数描述 |
24| -------- | -------- | -------- | -------- |
25| selected | Date | 否 | 设置选中项的时间。<br/>默认值:当前系统时间 |
26
27## 属性
28
29除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性:
30
31| 名称 | 参数类型 | 描述 |
32| -------- | -------- | -------- |
33| useMilitaryTime | boolean | 展示时间是否为24小时制,不支持动态修改。<br/>默认值:false |
34
35## 事件
36
37除支持[通用事件](ts-universal-events-click.md)外,还支持以下事件:
38
39| 名称                                       | 功能描述        |
40| ---------------------------------------- | ----------- |
41| onChange(callback:&nbsp;(value:&nbsp;TimePickerResult )&nbsp;=&gt;&nbsp;void) | 选择时间时触发该事件。 |
42
43## TimePickerResult对象说明
44
45| 名称     | 参数类型   | 描述      |
46| ------ | ------ | ------- |
47| hour   | number | 选中时间的时。 |
48| minute | number | 选中时间的分。 |
49
50
51## 示例
52
53
54### 时间选择器
55
56```ts
57// xxx.ets
58@Entry
59@Component
60struct TimePickerExample {
61  @State isMilitaryTime: boolean = false
62  private selectedTime: Date = new Date('2022-07-22T08:00:00')
63
64  build() {
65    Column() {
66      Button('切换12小时制/24小时制')
67        .margin({ top: 30 })
68        .onClick(() => {
69          this.isMilitaryTime = !this.isMilitaryTime
70        })
71      TimePicker({
72        selected: this.selectedTime,
73      })
74        .useMilitaryTime(this.isMilitaryTime)
75        .onChange((value: TimePickerResult) => {
76          this.selectedTime.setHours(value.hour, value.minute)
77          console.info('select current date is: ' + JSON.stringify(value))
78        })
79    }.width('100%')
80  }
81}
82```
83
84![timePicker](figures/timePicker.gif)