本章主要介绍特殊的图层:
CAShapeLayer
:CATextLayer
:CATransformLayer
:CAGradientLayer
:CAReplicatorLayer
:CAScrollLayer
:CATiledLayer
:CAEmitterLayer
:AVPlayerLayer
:
1.CAEmitterLayer
CAEmitterLayer
是高性能的粒子系统,用来创建实时的粒子动画,例如烟,火,雨等等。CAEmitterCell
实例定义了粒子效果,而CAEmitterLayer
作为其容器。
let emitter = CAEmitterLayer()
emitter.lifetime = 10
emitter.frame = self.container.bounds
self.container.layer.addSublayer(emitter)
emitter.renderMode = "additive"
emitter.emitterPosition = CGPointMake(emitter.frame.width/2, emitter.frame.height/2)
let cell = CAEmitterCell()
cell.contents = UIImage(named: "personal_center_badge_double")!.CGImage
cell.birthRate = 150
cell.lifetime = 5.0
cell.color = UIColor(red: 1, green: 0.5, blue: 0.1, alpha: 1.0).CGColor
cell.alphaSpeed = -0.4
cell.velocity = 50;
cell.velocityRange = 50
cell.emissionRange = CGFloat(M_PI * 2.0)
emitter.emitterCells = [cell]
2.