粒子效果

粒子效果(复制层)

  • 开始

  • 重绘

  • 自定义一个DrawView

    • 绑定控制器的view

    • awakeFromNib中添加手势pan

    • 创建粒子

      • CALayer * dotLayer
      • cornerRadius
      • frame x 设置为负值,就能达到隐藏的效果
    • drawView中提供两个方法,作为接口

      • 开始

        • 创建帧动画CAKeyFrameAnimation
        • 根据路径做移动keyPath
        • .path = self.path.CGPath;
        • 把动画加给粒子,定义一个粒子的成员属性
        • duration
        • repeatCount
        • 让当前的view成为复制层,复制其子层
          • layerClass
          • CAReplicatorLayer
          • instanceCount = 50;
          • 设置延迟执行时间,instanceDelay = 0.25;
      • 重绘

        • 移除所有的动画
          • [self.dotLayer removeAllAnimation]
        • 删除路径
          • 删除路径当中所有的点
          • removeAllPoints
          • setNeedsDisplay
    • pan手势里

      • curP = [pan locationInView:self]
      • 开始:
        • 创建路径
        • moveToPoint:
        • self.path = path
      • 改变:
        • 定义一个成员属性path
        • addLineToPoint:
        • setNeedsDisplay
    • drawRect方法里面

      • stroke
  • 注意:一个路径可以画多条线

你可能感兴趣的:(粒子效果)