美文网首页SwiftUISwiftUI学习笔记
navigationBarTitle背景色,title颜色改变

navigationBarTitle背景色,title颜色改变

作者: Attempt_30b7 | 来源:发表于2020-03-30 10:37 被阅读0次

    在swiftUI目前官方没有给出改背景色的借口,所以就要自己写了,更新11.4后发现一种更好的更改颜色的方法如下

    struct MainView: View {
        init() {
            UINavigationBar.appearance().tintColor = UIColor.init(named: "MainColor2") //强调色,指尖头那些
            UINavigationBar.appearance().barTintColor = UIColor.init(named: "导航栏颜色") // 导航栏颜色
            UINavigationBar.appearance().titleTextAttributes = [.foregroundColor: UIColor.white] //导航栏上的title的颜色
            //background不建议使用,喜欢可自己尝试
        }
        var body: some View {
            
            NavigationView{
                List{
             
    } .navigationBarTitle("\(self.Title)",displayMode: .inline) 
                }
               
                
    }
    }
    

    如果当你struct里面有未初始化的对象时,就不能使用init(),可以如下写,当然,无论什么情况都可用以下方法

    struct MainView: View {
      
        var body: some View {
            
            NavigationView{
                List{
             
    } .navigationBarTitle("\(self.Title)",displayMode: .inline) 
                }.onAppear(){
       UINavigationBar.appearance().tintColor = UIColor.init(named: "MainColor2") //强调色,指尖头那些
            UINavigationBar.appearance().barTintColor = UIColor.init(named: "导航栏颜色") // 导航栏颜色
            UINavigationBar.appearance().titleTextAttributes = [.foregroundColor: UIColor.white] //导航栏上的title的颜色
            //background不建议使用,喜欢可自己尝试
    }
                         
    }
    }
    

    相关文章

      网友评论

        本文标题:navigationBarTitle背景色,title颜色改变

        本文链接:https://www.haomeiwen.com/subject/tkvcuhtx.html