1# TimePicker 2 3时间选择组件,根据指定参数创建选择器,支持选择小时及分钟。 4 5> **说明:** 6> 7> 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 8 9 10## 子组件 11 12无 13 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: (value: TimePickerResult ) => void) | 选择时间时触发该事件。 | 42 43## TimePickerResult对象说明 44 45| 名称 | 参数类型 | 描述 | 46| ------ | ------ | ------- | 47| hour | number | 选中时间的时。 | 48| minute | number | 选中时间的分。 | 49 50 51## 示例 52 53```ts 54// xxx.ets 55@Entry 56@Component 57struct TimePickerExample { 58 @State isMilitaryTime: boolean = false 59 private selectedTime: Date = new Date('2022-07-22T08:00:00') 60 61 build() { 62 Column() { 63 Button('切换12小时制/24小时制') 64 .margin({ top: 30 }) 65 .onClick(() => { 66 this.isMilitaryTime = !this.isMilitaryTime 67 }) 68 TimePicker({ 69 selected: this.selectedTime, 70 }) 71 .useMilitaryTime(this.isMilitaryTime) 72 .onChange((value: TimePickerResult) => { 73 this.selectedTime.setHours(value.hour, value.minute) 74 console.info('select current date is: ' + JSON.stringify(value)) 75 }) 76 }.width('100%') 77 } 78} 79``` 80 81![timePicker](figures/timePicker.gif)