且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使导航栏和状态栏模糊(UIBlurEffect)? iOS,Swift 3

更新时间:2022-10-19 13:12:21

Setting the background image to the navigation bar does the trick. In swift 3 the below code works for me.

    let visualEffectView   = UIVisualEffectView(effect: UIBlurEffect(style: .light))
    visualEffectView.frame =  (self.navigationController?.navigationBar.bounds.insetBy(dx: 0, dy: -10).offsetBy(dx: 0, dy: -10))!
    self.navigationController?.navigationBar.isTranslucent = true
    self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
    self.navigationController?.navigationBar.addSubview(visualEffectView)

output: