meyou ed1935c9fb
DayCell SolarDay 静态缓存:避免 Pager 切换时重复创建对象触发 GC
每个 DayCell 创建时调用两次 SolarDay.fromYmd() 计算节日/农历信息。
Pager 缓存页的大量 DayCell 同时重建时产生大量临时对象,加剧 GC 压力。

修复:在 DayCell.kt 中增加进程级静态缓存 dayCellInfoCache,按日期缓存
computeDayCellInfo() 的结果。首次计算后永久复用,消除重复对象创建。
2026-05-18 23:12:43 +08:00
2026-05-16 15:15:27 +08:00
2026-05-15 10:12:15 +08:00

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 处理所有日期逻辑
  • 双模块::sharedUI + 逻辑)· :androidApp(薄壳)
Description
No description provided
Readme 12 MiB
Languages
Kotlin 77.3%
Shell 18.7%
PowerShell 4%