- ShiftPatternTest: 锚点前后、跨周期循环、负天数取模、空 cycle、 单元素 cycle、多样化周期、data class 属性 - CalendarUtilsExtraTest: calculateWeeksCountForPage(跨月/跨年)、 relativeDayDescription(今天/昨天/明天/N天前后/跨年月)、 formatLunarDate(农历前缀/正月初一/多日期验证) - CalendarViewModelStateTest: 初始状态、selectDate(含 currentMonth/Year 联动)、 increment/decrementYear、selectMonthFromYearView、shiftKindAt、 showLegalHoliday、onDrag/onExpandDrag progress 更新与 clamp、 getMonthDays 与 selectedDate/today 交互 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
YaYa
基于 Kotlin Multiplatform 与 Compose Multiplatform 的日历应用,Android 和 iOS 共享 UI。
月视图与周视图之间支持流畅的折叠/展开过渡——拖拽切换,弹簧动画自动吸附。无限分页,ISO 8601 周起始,Material 3。
构建
# Android
./gradlew :androidApp:assembleDebug
# iOS — 在 Xcode 中打开 iosApp/ 运行
技术栈
- Kotlin 2.3 · Compose Multiplatform 1.10 · Material 3
kotlinx-datetime处理所有日期逻辑- 双模块:
:shared(UI + 逻辑)·:androidApp(薄壳)
Description
Languages
Kotlin
77.3%
Shell
18.7%
PowerShell
4%