首页 > 解决方案 > 如何在 Swift 中使 UITabBar 模糊

问题描述

我试图让 UITabBar 看起来模糊。 我正在尝试在这张图片中制作类似的东西 但我的视图现在看起来像这样 这是我的标签栏视图

我在 UITabbarController 中尝试了这段代码 -

Code:
class TabBarViewController: UITabBarController { 
    override func viewDidLoad() {
        super.viewDidLoad()
        configureTabbar()
    }
    
    func configureTabbar(){
        
        
        let blurEffect = UIBlurEffect(style: .dark)
        let vibrancyEffect = UIVibrancyEffect(blurEffect: blurEffect)

        let vibrancyView = UIVisualEffectView()
        vibrancyView.frame = tabBar.bounds
        vibrancyView.autoresizingMask = .flexibleWidth
        vibrancyView.effect = vibrancyEffect
        tabBar.insertSubview(vibrancyView, at: 0)
        
        tabBar.isTranslucent = true
        tabBar.backgroundImage = UIImage()
        tabBar.backgroundColor = .clear
        tabBar.barStyle = UIBarStyle.black
        tabBar.barTintColor = UIColor.clear
}

标签: swiftuitabbarcontrollerblurtabbaruiblureffect

解决方案


默认情况下,系统栏(例如UINavigationBarUITabBar&)UIToolbar是半透明的,您无需添加任何额外内容即可获得该效果。

您只需要确保您的视图在系统栏下扩展它的内容。您可以转到情节提要并确保Extend Edges - Under Bottom Bars已检查UIViewController您计划在其上看到此效果的您。

在此处输入图像描述


推荐阅读