如果我将子视图添加到UINavigationBar,默认后退按钮将停止工作

Ada*_*ger 3 cocoa-touch uinavigationbar ios swift

我想使用a UIVisualEffectView作为a 的背景,UINavigationBar因为它实现的效果不同于简单地设置translucent = trueUINavigationBar.

我通过继承UINavigationController并将其添加到其中来完成此操作viewDidLoad()

visualEffectView = UIVisualEffectView(effect: UIBlurEffect(style: .Dark))
visualEffectView.autoresizingMask = [.FlexibleHeight, .FlexibleWidth]
navigationBar.addSubview(visualEffectView)
navigationBar.sendSubviewToBack(visualEffectView)
Run Code Online (Sandbox Code Playgroud)

UIVisualEffectView看上去很好,而且在我的导航正常工作的其他按钮,但内置的后退按钮(我没有定制)停止工作.我仍然可以滑动返回,但点击后退按钮不起作用.删除UIVisualEffectView恢复后退按钮的功能.

我尝试检查Xcode中的视图层次结构,并且UIVisualEffectView没有阻止后退按钮或类似的东西.

知道会发生什么吗?是否有更好的方法将其UIVisualEffectView用作a的背景UINavigationBar,还是需要进行其他设置?

Kas*_*ner 12

visualEffectView.userInteractionEnabled = false
Run Code Online (Sandbox Code Playgroud)

为我做了诀窍