粒子效果(复制层)
开始
重绘
-
自定义一个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
注意:一个路径可以画多条线