2017-10-19 41 views
1

Picture of my codeVisualEffectView在斯威夫特和Xcode9

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet var addItemView: UIView! 

    @IBOutlet weak var visualEffectView: UIVisualEffectView! 

    var effect: UIVisualEffect! 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     effect = visualEffectView.effect 
     visualEffectView.effect = nil 

     addItemView.layer.cornerRadius = 5 
    } 

    func animateIn(){ 
     self.view.addSubview(addItemView) 
     addItemView.center = self.view.center 

     addItemView.transform = CGAffineTransform.init(scaleX: 1.3, y: 1.3) 
     addItemView.alpha = 0 

     UIView.animate(withDuration: 0.4){ 
      self.visualEffectView.effect = self.effect 
      self.addItemView.alpha = 1 
      self.addItemView.transform = CGAffineTransform.identity 
     } 
    } 

    @IBAction func sourcesButton(_ sender: Any) { 
     animateIn() 
    } 


    @IBAction func sourceDone(_ sender: Any) { 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 


} 

我试图做一个模糊的模式弹出当用户点击一个按钮,但由于某种原因这个代码不执行。我正在关注YouTube上的教程(Youtube Link)我将不胜感激。

+0

您需要在此发布您的代码,以便读者可以提供建议。当您提问 – Jake

+0

对此感到抱歉 – moyeshkhanal

+0

你走了! LOoks现在就像一个专业问题。欢迎登机 – Jake

回答

0

这样,而不是创建模糊的观点:

var blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Dark) 
var blurEffectView = UIVisualEffectView(effect: blurEffect) 
view.addSubview(blurEffectView) 

,并在创建后,您可以设置阿尔法为0,并以动画为1
请注意与UIBlurEffect该动画看起来在设备上可怕的:P