时间/日期/地区选择器组件招募

发布人:仓颉技术交流平台官方
分类:UI 组件 / 选择器与输入

需要开源一个选择器,涵盖时间选择、地区选择、分割线自定义设置,以及文字大小与颜色的个性化配置。

等待接取
2025-11-19
8

悬赏内容

招募内容

核心需求:开发一款开源选择器组件,实现类似 ohos-PickerView 的选择交互功能,支持轻量化集成、高可定制,满足多场景选择需求。

一、核心定位与技术基础

  • 开源属性:遵循 Apache-2.0 协议,支持 ohpm 包管理工具集成,允许自由使用、修改、二次分发。

  • 核心目标:替代重复开发,提供单列 / 多列选择、时间选择等核心能力,兼顾易用性、稳定性和跨设备适配性。

二、核心功能需求

1. 基础选择核心能力

  • 支持自定义单列 / 多列选项数据,兼容字符串、数值、日期等常见数据类型。

  • 多列选择需实现联动逻辑(如省 - 市 - 区、年 - 月 - 日),联动响应延迟≤100ms,无卡顿。

  • 支持预设默认选中项,选择完成后通过仓颉语言回调函数返回选中数据(含列索引、选项值)。

2. 样式高度自定义

  • 可配置选择器整体宽高、背景色、边框圆角、阴影效果,适配不同应用 UI 风格。

  • 支持自定义字体大小、颜色、字重,选中项需提供高亮样式(如背景色、下划线、字体加粗)。

  • 允许修改确认 / 取消按钮的文本内容、字体样式、颜色及按钮尺寸,支持隐藏按钮的自定义配置。

3. 时间选择专项功能

  • 内置时间选择模式(时 - 分、时 - 分 - 秒),支持设置时间范围(如限制 9:00-18:00 可选)。

  • 适配 24 小时制 / 12 小时制切换,时间显示格式准确,无时分秒错位、溢出问题。

  • 滑动切换时间时数字滚动流畅,支持惯性滑动,松手后快速定位到最近选项。

4. 交互体验优化

  • 滑动选择响应灵敏,触摸反馈清晰,支持选中时震动提示(可配置开启 / 关闭)。

  • 支持点击选择器外部区域关闭组件,或通过按钮触发关闭,关闭时可配置是否返回选中数据。

  • 组件弹出 / 收起时支持淡入淡出 / 平移过渡动画,动画时长可自定义,提升交互质感。

5. 兼容性与稳定性

  • 适配主流设备(手机、平板),不同屏幕尺寸下界面无错乱、拉伸问题。

  • 长时间高频次操作(连续滑动 1000 次)无崩溃、内存泄漏,CPU 占用率≤15%。

  • 支持国际化适配,可通过配置文件切换多语言文本(按钮文本、提示信息等)。

三、适用场景说明

组件适用场景包括但不限于:

  • 表单填写:地址、生日、性别、职业等选择场景。

  • 功能设置:闹钟时间、定时任务、音量调节等场景。

  • 筛选交互:商品分类、价格区间、时间范围筛选等场景。

相关附件

暂无附件

质量认证要求

交付件

NO

交付件描述

备注

1

三方库源代码

源代码

2

三方库测试方案和用例

测试用例和文档

3

用户手册,API文档,设计文档,license文档

 资料和文档

验收标准

1.功能

  1. 三方库必须有明确的功能;

  2. 如果参考对标库移值开发,功能与参考三方库保持一致。

2.资料

  1. Readme:包含简介,软件架构,目录结构,下载安装(编译构建),接口说明,使用示例,约束限制,开源协议,参与贡献等内容;

  2. Changelog,三方库版本需包含基本的修改说明。

3.标准遵从性(可选),三方库实现需满足对应协议或行业标准,举例

  1. appquth:支持对OAuth 的PKCE扩展;

  2. icu4j:支持unicode标准库,通用字符集ISO/IEC 10646。

4.性能目标

  1. 性能敏感三方库接口运行性能持平对标三方库

5.开源协议遵从,必须包含License文件

  1. 放置合适的开源License协议,建议Apache License Version 2.0;

  2. 引用或参考开源三方库,需遵从开源协议。

6.网络安全要求

  1. 满足基础的网络安全红线及隐私要求,符合安全编码规范。

过程质量要求

指标分类

指标名称

指标要求

度量工具

牵引 OR Must

代码度量

平均文件代码行

≤300 LOC

CMetricsPlus,CJMetric

Must

总文件重复率

C/C++≤4%;相比开源不劣化

CMetricsPlus,CJMetric

Must

源文件重复率

C/C++≤4%;相比开源不劣化

CMetricsPlus,CJMetric

Must

平均函数或方法代码行*

≤30  LOC

CMetricsPlus,CJMetric

Must

总代码重复率

C/C++≤10%;相比开源不劣化

CMetricsPlus,CJMetric

Must

源文件代码重复率

C/C++≤10%;相比开源不劣化

CMetricsPlus,CJMetric

Must

平均圈复杂度

≤5;相比开源不劣化

CMetricsPlus,CJMetric

Must

冗余代码

“0” 【2】;

CMetricsPlus,CJMetric

Must

不安全函数

NA

CMetricsPlus,CJMetric

Must

静态检查

编译告警

“0” 【2】

Compile工具

牵引

通用静态告警

“0” 【2】

Pclint plus,CJLINT

Must

开发者测试

DT用例密度(个/KLOC)

> 40

手工

牵引 

DT代码语句覆盖率

>=85%

Gcov,cjcov

牵引

DT代码分支覆盖率

>=50%

Gcov,cjcov

牵引

未做DT文件数

0

手工

牵引

问题解决率

遗留问题DI

整体<10

Issue

牵引 

遗留致命缺陷数(0)

0

Issue

Must

累计缺陷解决率

85%

Issue

牵引 

软件开发

每日构建成功率

100%

CI

牵引

测试评估

测试缺陷密度(/KLOC)

5-9

人工

牵引

测试用例密度(个/KLOC)

20-40

人工

牵引

初验用例自动化率

100%

CIDA

牵引 

HLT自动化用例比率

【85%,95%】

CIDA

牵引 

开源第三方(含构建工具)

开源片段引用

0(除例外备案类)

FOSSBOT+人工

Must

可信构建

二进制一致性

0(含可澄清)

人工

Mus