一款开源、无广告的极简课程表应用,支持从教务系统导入课程数据。
kizitonwose/Calendar
面向 Android 与 Compose Multiplatform 的高度可定制日历库,支持周、月、年及热力图视图。
- Star
- 5,627
- Fork
- 588
- 未关闭 Issue
- 10
- 最近提交
- 3个月前
这是什么?
Calendar 是一个 Kotlin 日历库,负责日期逻辑,视觉样式完全由开发者自行设计。它同时提供基于 RecyclerView 的 View 版本和基于 LazyRow、LazyColumn 的 Compose 版本,可用于传统 Android 视图体系,也可用于 Compose 界面。
库支持周、月、年三种布局,支持水平或垂直滚动,并支持单选、多选和范围选择日期。开发者可以禁用特定日期、设置日期边界、将任意一天设为每周起始日,并为年、月、周添加头部或尾部。日期单元格和整个日历都可以用自定义 Composable 或 View 实现。
Compose Multiplatform 版本基于 kotlinx-datetime,支持 Android、iOS、JS、WasmJs 和 Desktop。库还提供热力图日历模式,用于展示随时间变化的数据,类似 GitHub 的贡献图。
核心功能
- 01支持周、月、年三种日历模式,可水平或垂直滚动。
- 02支持单选、多选和范围日期选择。
- 03可禁用指定日期并设置日期边界。
- 04日期单元格和日历布局均可自定义为 View 或 Composable。
- 05支持为年、月、周添加头部和尾部。
- 06提供热力图日历模式,用于展示随时间变化的数据。
适用场景
- 为 Android 应用添加日期选择器或预约日历。
- 开发运行于 Android、iOS、Web 和桌面端的 Compose Multiplatform 应用。
- 以热力图形式展示活动或贡献数据。
收录于专题
标签
常见问题
- Calendar 是什么?
- 面向 Android 与 Compose Multiplatform 的高度可定制日历库,支持周、月、年及热力图视图。 Calendar 是一个 Kotlin 日历库,负责日期逻辑,视觉样式完全由开发者自行设计。它同时提供基于 RecyclerView 的 View 版本和基于 LazyRow、LazyColumn 的 Compose 版本,可用于传统 Android 视图体系,也可用于 Compose 界面。
- Calendar 可以免费使用吗?用的什么许可证?
- Calendar 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- Calendar 还在维护吗?
- 半年内有更新。Calendar 最近一次提交是在 2026年8月13日。
- Calendar 适合用来做什么?
- 为 Android 应用添加日期选择器或预约日历。 开发运行于 Android、iOS、Web 和桌面端的 Compose Multiplatform 应用。 以热力图形式展示活动或贡献数据。
- 在哪里获取 Calendar?
- 源代码和安装说明在 GitHub 上:https://github.com/kizitonwose/Calendar
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个 Gradle 插件加 Compose UI 库,在构建时收集项目依赖及许可证,并在 Android 与多平台应用中展示。
Kotlin/Compose Multiplatform 跨平台示例,展示 Climate TRACE 排放数据
基于 Jetpack Compose 的声明式 Kotlin UI 框架,可在 iOS、Android、桌面和 Web 间共享界面代码。
面向 iOS 和 Mac Catalyst 的 Swift 日历 UI 库,外观接近系统日历,可按需定制。
一款采用 Material You 设计风格的 Android RSS 阅读器,基于 Kotlin 与 Jetpack Compose 构建。