行业资讯、技术文章和产品介绍
📚 Claude 教程合集
40+ 篇英文 Claude 教程:Prompt 工程、Claude Code、API、Agents…按主题分组导航 →
加载中...
SwiftUI 里用 TimelineView 驱动一张吉祥物场景卡,两个毛病:第一次点开音色时蜗牛原地镜像翻转一下,停止播放时背景硬切。前者查了两轮——第一轮以为是 timeline 暂停导致时间源错位,改完仍在;真正的根因是相位取模时那句 `raw < 0 ? raw + 1 : raw`,它把「timeline.date 比 Date() 早了一帧」这个几十毫秒的误差,回绕放大成了 0.9999 的相位,而朝向恰好是相位在 0 处的不连续函数。这篇复盘讲清楚为什么在 TimelineView 里不能用 .transition、怎么把动画状态写成时间的纯函数、以及交叉淡化为什么要设计成「只有淡入没有淡出」。