未验证 提交 46708b06 编写于 作者: O openharmony_ci 提交者: Gitee

!22721 【挑单monthly_20230815】新增日历选择器组件文档

Merge pull request !22721 from sunjiakun/cherry-pick-1692696766
......@@ -66,6 +66,7 @@
- [AlphabetIndexer](ts-container-alphabet-indexer.md)
- [Blank](ts-basic-components-blank.md)
- [Button](ts-basic-components-button.md)
- [CalendarPicker](ts-basic-components-calendarpicker.md)
- [Checkbox](ts-basic-components-checkbox.md)
- [CheckboxGroup](ts-basic-components-checkboxgroup.md)
- [DataPanel](ts-basic-components-datapanel.md)
......@@ -178,6 +179,7 @@
- [警告弹窗](ts-methods-alert-dialog-box.md)
- [列表选择弹窗](ts-methods-action-sheet.md)
- [自定义弹窗](ts-methods-custom-dialog-box.md)
- [日历选择器弹窗](ts-methods-calendarpicker-dialog.md)
- [日期滑动选择器弹窗](ts-methods-datepicker-dialog.md)
- [时间滑动选择器弹窗](ts-methods-timepicker-dialog.md)
- [文本滑动选择器弹窗](ts-methods-textpicker-dialog.md)
......
# CalendarPicker
日历选择器组件,提供下拉日历弹窗,可以让用户选择日期。
> **说明:**
>
> 该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
## 子组件
## 接口
CalendarPicker(options?: CalendarOptions)
## 属性
除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性:
| 名称 | 参数类型 | 描述 |
| ----------- | ----------- | --------------------------------- |
| edgeAlign | alignType: [CalendarAlign](#calendaralign枚举说明),offset?: [Offset](ts-types.md#offset) | 设置选择器与入口组件的对齐方式。<br/>-alignType: 对齐方式类型。<br/>默认值:CalendarAlign .END。<br/>-offset: 按照对齐类型对齐后,选择器相对入口组件的偏移量。<br/>默认值:{dx: 0, dy: 0}。 |
| textStyle | [PickerTextStyle](./ts-basic-components-datepicker.md#pickertextstyle10类型说明) | 设置入口区的文本颜色、字号、字体粗细。 |
## 事件
除支持[通用事件](ts-universal-events-click.md),还支持以下事件:
| 名称 | 功能描述 |
| ----------------------------------------- | ---------------------- |
| onChange(callback: (value: Date) => void) | 选择日期时触发该事件。<br/>value:选中的日期值 |
## CalendarOptions对象说明
| 参数名 | 参数类型 | 必填 | 参数描述 |
| ----------- | ---------- | ------| --------------------------------- |
| hintRadius | number \| [Resource](ts-types.md#resource) | 否 | 描述日期选中态底板样式。<br/>默认值:底板样式为圆形。<br />**说明:**<br />hintRadius为0,底板样式为直角矩形。hintRadius为0 ~ 16,底板样式为圆角矩形。hintRadius>=16,底板样式为圆形 |
| selected | Date | 否 | 设置选中项的日期。<br/>默认值:当前系统日期。<br/> |
## CalendarAlign枚举说明
从API version 9开始,该接口支持在ArkTS卡片中使用。
| 名称 | 描述 |
| ------ | ------------------------ |
| START | 设置选择器与入口组件左对齐的对齐方式。 |
| CENTER | 设置选择器与入口组件居中对齐的对齐方式。 |
| END | 设置选择器与入口组件右对齐的对齐方式。 |
## 示例
```ts
// xxx.ets
@Entry
@Component
struct CalendarPickerExample {
private selectedDate: Date = new Date()
build() {
Column() {
Text('月历日期选择器').fontSize(30)
Column() {
CalendarPicker({ hintRadius: 10, selected: this.selectedDate })
.edgeAlign(CalendarAlign.END)
.textStyle({ color: "#ff182431", font: { size: 20, weight: FontWeight.Normal } })
.margin(10)
.onChange((value) => {
console.info("CalendarPicker onChange:" + JSON.stringify(value))
})
}.alignItems(HorizontalAlign.End).width("100%")
}.width('100%').margin({top:350})
}
}
```
![CalendarPicker](figures/CalendarPicker.gif)
......@@ -119,6 +119,9 @@
- [CheckboxGroup](ts-basic-components-checkboxgroup.md)
多选框群组,用于控制多选框全选或者不全选状态。
- [CalendarPicker](ts-basic-components-calendarpicker.md)
提供下拉日历弹窗,可以让用户选择日期。
- [DatePicker](ts-basic-components-datepicker.md)
选择日期的滑动选择器组件。
......
# 日历选择器弹窗
点击日期弹出日历选择器弹窗,可选择弹窗内任意日期。
> **说明:**
>
> 该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
>
> 本模块功能依赖UI的执行上下文,不可在UI上下文不明确的地方使用,参见[UIContext](../apis/js-apis-arkui-UIContext.md#uicontext)说明。
## CalendarPickerDialog.show
show(options?: [CalendarDialogOptions](#calendardialogoptions))
定义日历选择器弹窗并弹出。
## CalendarDialogOptions
| 参数名 | 参数类型 | 必填 | 参数描述 |
| ---------- | ----------------------------------------- | ---- | ------------------------------------------------------------ |
| selected | Date | 否 | 设置当前选中的日期。 默认值:当前系统日期 |
| hintRadius | number \|[Resource](ts-types.md#resource) | 否 | 描述日期选中态底板样式。<br/>默认值:底板样式为圆形。<br />**说明:**<br />hintRadius为0,底板样式为直角矩形。hintRadius为0 ~ 16,底板样式为圆角矩形。hintRadius>=16,底板样式为圆形 |
| onAccept | (value: Date) => void | 否 | 点击弹窗中的“确定”按钮时触发该回调。<br/>value:选中的日期值 |
| onCancel | () => void | 否 | 点击弹窗中的“取消”按钮时触发该回调。 |
| onChange | (value: Date) => void | 否 | 选择弹窗中日期使当前选中项改变时触发该回调。<br/>value:选中的日期值 |
## 示例
```ts
// xxx.ets
@Entry
@Component
struct CalendarPickerDialogExample {
private selectedDate: Date = new Date()
build() {
Column() {
Button("Show CalendarPicker Dialog")
.margin(20)
.onClick(() => {
console.info("CalendarDialog.show")
CalendarPickerDialog.show({
selected: this.selectedDate,
onAccept: (value) => {
console.info("calendar onAccept:" + JSON.stringify(value))
},
onCancel: () => {
console.info("calendar onCancel")
},
onChange: (value) => {
console.info("calendar onChange:" + JSON.stringify(value))
}
})
})
}.width('100%')
}
}
```
![CalendarPickerDialog](figures/CalendarPickerDialog.gif)
......@@ -1350,6 +1350,7 @@
- [AlphabetIndexer](reference/arkui-ts/ts-container-alphabet-indexer.md)
- [Blank](reference/arkui-ts/ts-basic-components-blank.md)
- [Button](reference/arkui-ts/ts-basic-components-button.md)
- [CalendarPicker](reference/arkui-ts/ts-basic-components-calendarpicker.md)
- [Checkbox](reference/arkui-ts/ts-basic-components-checkbox.md)
- [CheckboxGroup](reference/arkui-ts/ts-basic-components-checkboxgroup.md)
- [DataPanel](reference/arkui-ts/ts-basic-components-datapanel.md)
......@@ -1463,6 +1464,7 @@
- [警告弹窗](reference/arkui-ts/ts-methods-alert-dialog-box.md)
- [列表选择弹窗](reference/arkui-ts/ts-methods-action-sheet.md)
- [自定义弹窗](reference/arkui-ts/ts-methods-custom-dialog-box.md)
- [日历选择器弹窗](reference/arkui-ts/ts-methods-calendarpicker-dialog.md)
- [日期滑动选择器弹窗](reference/arkui-ts/ts-methods-datepicker-dialog.md)
- [时间滑动选择器弹窗](reference/arkui-ts/ts-methods-timepicker-dialog.md)
- [文本滑动选择器弹窗](reference/arkui-ts/ts-methods-textpicker-dialog.md)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册