美文网首页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