Additive bounds 动画仅在目标值较小时有效。

Additive bounds animation only works when target value is smaller.

我正在尝试使用附加技术为边界设置动画。 (动画变为 0 并从负差异开始)。它在动画化到 较小的 边界时有效,但在 较大的 边界时中断。当动画到更大的边界时,它会捕捉到最终边界值 + 目标边界值的倒数。例如如果我们从 100x100 到 200x200 设置动画,动画将捕捉到 300x300 并设置为 200x200。看起来具有负宽度和高度的目标值正在被标准化。 (例如 -100x-100 变为 100x100)不过我不确定如何解决这个问题。

touchesBegan 处理程序中的代码。我的图层是 100x100

这似乎是一个已知问题:http://www.openradar.me/12085417

解决方法是设置动画 "bounds.size"。但是你还需要设置模型层的bounds直接反对使用setValue(targetValue, forKey: "bounds.size")