高度可定制的跨平台日历库
Calendar Library
一个为Android和Compose Multiplatform设计的高度可定制的日历库,基于RecyclerView(视图系统)和LazyRow/LazyColumn(Compose)实现。
项目链接地址:https://github.com/kizitonwose/Calendar.git
功能特性
- 多种视图模式:支持周视图、月视图或年视图模式
- 灵活的日期选择:支持单选、多选或范围选择
- 日期禁用功能:可以禁用特定日期防止被选择
- 边界日期限制:可以设置日历的日期范围限制
- 完全自定义:支持自定义日期视图和Compose组件
- 跨平台支持:同时支持Android视图系统和Compose Multiplatform
安装指南
该库尚未发布到中央仓库,可以通过以下方式使用:
- 克隆仓库到本地
- 添加为本地模块依赖
系统要求:
- Android SDK 21+
- Kotlin 1.5.0+
使用说明
基础使用示例:
// 创建日历实例
val calendar = Calendar(
mode = CalendarMode.Month(),
selectionMode = SelectionMode.Single()
)
// 设置日期范围
calendar.setBoundaries(
start = LocalDate.now().minusMonths(6),
end = LocalDate.now().plusMonths(6)
)
// 添加日期选择监听
calendar.setOnDateSelectedListener { date ->
// 处理日期选择
}
典型使用场景:
- 预约系统
- 行程规划应用
- 日期选择器
- 活动日历
界面展示
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码