首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NavigationBar背景色在swift5中不起作用

NavigationBar背景色在swift5中不起作用
EN

Stack Overflow用户
提问于 2021-11-20 05:35:16
回答 1查看 57关注 0票数 0

我在swift5中使用NavigationBar。NavigationBar背景颜色显示为黑色。这是我的图片

下面是我的代码:

代码语言:javascript
复制
    class ViewController: UIViewController {
        override func viewDidLoad() {
            super.viewDidLoad()
            
            self.navigationController?.navigationBar.tintColor = UIColor.red
            self.navigationController?.navigationBar.barTintColor = UIColor.green
            self.navigationController?.navigationBar.barTintColor = .red
            self.navigationItem.title = "ABC title"
            self.navigationController!.navigationBar.titleTextAttributes = [NSAttributedString.Key.foregroundColor : UIColor.white]
            self.navigationController?.navigationBar.isTranslucent = false
        }
    }

我的代码有什么问题?请帮帮我

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-20 09:31:56

这就是为什么在iOS 15 NavigationBars中使用scrollEdgeAppearance,如果你想使用旧的外观,你必须这样声明它:

代码语言:javascript
复制
override func viewDidLoad() {
        super.viewDidLoad()
        let appearance = UINavigationBarAppearance()
        appearance.configureWithOpaqueBackground()
        appearance.backgroundColor = .red
        appearance.titleTextAttributes = [NSAttributedString.Key.foregroundColor : UIColor.white]
        self.navigationController?.navigationBar.standardAppearance = appearance;
        self.navigationController?.navigationBar.scrollEdgeAppearance = self.navigationController?.navigationBar.standardAppearance
        
        self.navigationItem.title = "ABC title"
    }

这就是结果:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70043495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档