Reputation:
I use this code to blur navigation bar:
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)
self.navigationController?.navigationBar.sendSubview(toBack: visualEffectView)
But my back button doesn't work and other button doesn't appear. How to fix it?
Upvotes: 2
Views: 2141
Reputation: 6067
Just you should disable "isUserInteractionEnabled
" to your visualEffectView
add the following line:
visualEffectView.layer.zPosition = -1;
visualEffectView.isUserInteractionEnabled = false
Upvotes: 5