2016-05-20 68 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 

    }