2016-05-20 3 views
0

Есть ли способ удерживать CAEmitter с центром в UIView (используя Autolayout) при вращении устройства?Держите CAEmitter центрированным при вращении устройства

Я добавляю мой эмиттера к viewDidLoad так:

// setup emitter 
     let emitter = CAEmitterLayer() 
     emitter.frame = self.view.bounds 

     emitter.renderMode = kCAEmitterLayerAdditive 
     emitter.emitterPosition = self.view.center 
     self.view.layer.insertSublayer(emitter, atIndex: 1) 

     // setup cells 
     let cell = CAEmitterCell() 
     cell.contents = UIImage(named: "particle")?.CGImage 
     cell.birthRate = 1500 
     cell.lifetime = 5.0 
     cell.color = UIColor(red: 1.0, green: 0.5, blue: 0.1, alpha: 1).CGColor 
     cell.alphaSpeed = -0.4 
     cell.velocity = 50 
     cell.velocityRange = 250 

     cell.emissionRange = CGFloat(M_PI) * 2.0 

     //add cells to the emitter 
     emitter.emitterCells = [cell] 

Я попытался удалить его и повторно добавить его снова, но не в центре ....

ответ

1

хорошо получил. Для тех, кто сталкивается с этим ...

override func viewDidLayoutSubviews() { 

     emitter.emitterPosition = self.view.center 

    } 
Смежные вопросы