【问题标题】:CATiledLayer with animating content带有动画内容的 CATiledLayer
【发布时间】:2011-04-29 14:14:32
【问题描述】:

我有这个由 CATiledLayer 支持的 UIView。目前我的设置工作非常顺利,但是当我想为这个 CATiledLayer 上的某些视图对象设置动画时,恐怖就开始了。

我了解到我可以使用setNeedsDisplay 强制 CATiledLayer 重绘自身。但这实际上重绘了屏幕上的所有内容。所以所有的图块都重新加载了。

当某些东西正在制作动画时,我应该如何更新我的图层?让我们以以下为例:我的图层上有 6 个绿色矩形,当我按下 UIButton 时,我想将 4 号矩形的颜色更改为红色,并将矩形 1 2 和 3 重新定位在贝塞尔曲线上。

【问题讨论】:

    标签: animation view redraw catiledlayer


    【解决方案1】:

    您可以使用 CATiledView:setNeedsDisplayInRect: 仅绘制图层的一部分。

    在你的情况下,你应该:

    1. 用新颜色重绘 4
    2. 重绘 1、2 和 3 的旧位置,没有矩形
    3. 在 1、2 和 3 上重新绘制新位置

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多