swift 更改navigationbar的alpha值,使基础对象可见

jv4diomz  于 2023-06-21  发布在  Swift
关注(0)|答案(1)|浏览(95)

我想实现一个半透明的NavigationBar,这样底层的对象就可以看到了。
它应该看起来像这样:

此视图是一个自定义视图,它使用alpha值来实现半透明行为。
我试着这样实现我的自定义NavigationBar:

UINavigationBar.appearance().barTintColor = .white
    UINavigationBar.appearance().tintColor = UIColor(netHex: CxtColor.black.rawValue)
    UINavigationBar.appearance().shadowImage = UIImage()
    UINavigationBar.appearance().isTranslucent = true
    UINavigationBar.appearance().setBackgroundImage(UIImage(), for: .default)
    UINavigationBar.appearance().inputView?.alpha = 0.4
    UINavigationBar.appearance().alpha = 0.4

但是它不是半透明的,而且alpha值的改变对NavigationBar没有真正的影响。它只是一个白色的导航栏。
我不想创建一个完全透明的导航栏。

wi3ka0sx

wi3ka0sx1#

]您可以访问navigationBackgroundView

self.navigationController?.navigationBar.isTranslucent = true
        let navigationBackgroundView = self.navigationController?.navigationBar.subviews.first
        navigationBackgroundView?.alpha = 0.3

相关问题