我正在尝试创建以UIVisualEffectView为背景的模态弹出窗口。我希望UIVisualEffectView在标签栏上方,但我看不到实现它的方法。
这是我所做的,但这不是我想要的输出:

var visualEffectView = UIVisualEffectView(effect: UIBlurEffect(style: .light))
visualEffectView.frame = self.view.bounds
tabBarController?.view.addSubview(visualEffectView)

//Also tried like this
self.view.window?.addSubview(visualEffectView)

这正是我想要的:
ios - 也在标签栏上添加UIVisualEffectView-LMLPHP
所以我的问题是,我应该如何将UIVisualEffectView添加到选项卡栏上,同时作为子视图。我知道我可以制作另一个viewController并将其显示为.OverCurrentContext,但这不是我的解决方案。

最佳答案

我重现了将visualEffectView添加到UITabBarController主视图中的问题。对于非半透明选项卡栏,视图控制器视图不在其下扩展,因此高度比需要的要短。
解决问题的方法

visualEffectView.frame = self.view.bounds

致:
visualEffectView.frame = self.tabBarController!.view.bounds

09-27 17:27