- MiniMonth 日期网格改 Canvas 绘制,单页 Composable 从 ~600 降到 ~120 - 年视图 beyondViewportPageCount 首帧 0、首帧后恢复 1,避免一次组合 36 个 MiniMonth - toggleYearView 先启动动画再翻转 isYearView,月视图缩小与年视图组合交错 - 添加 ComposeTrace 跨平台 trace 工具用于性能分析 MonthView→YearView 总耗时 1732ms → 1033ms (↓40%),首帧 onMeasure 902ms → 129ms (↓86%)
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%