navigationBarTitle背景色,title顏色改變

在swiftUI目前官方?jīng)]有給出改背景色的借口,所以就要自己寫(xiě)了,更新11.4后發(fā)現(xiàn)一種更好的更改顏色的方法如下

struct MainView: View {
    init() {
        UINavigationBar.appearance().tintColor = UIColor.init(named: "MainColor2") //強(qiáng)調(diào)色,指尖頭那些
        UINavigationBar.appearance().barTintColor = UIColor.init(named: "導(dǎo)航欄顏色") // 導(dǎo)航欄顏色
        UINavigationBar.appearance().titleTextAttributes = [.foregroundColor: UIColor.white] //導(dǎo)航欄上的title的顏色
        //background不建議使用,喜歡可自己嘗試
    }
    var body: some View {
        
        NavigationView{
            List{
         
} .navigationBarTitle("\(self.Title)",displayMode: .inline) 
            }
           
            
}
}

如果當(dāng)你struct里面有未初始化的對(duì)象時(shí),就不能使用init(),可以如下寫(xiě),當(dāng)然,無(wú)論什么情況都可用以下方法

struct MainView: View {
  
    var body: some View {
        
        NavigationView{
            List{
         
} .navigationBarTitle("\(self.Title)",displayMode: .inline) 
            }.onAppear(){
   UINavigationBar.appearance().tintColor = UIColor.init(named: "MainColor2") //強(qiáng)調(diào)色,指尖頭那些
        UINavigationBar.appearance().barTintColor = UIColor.init(named: "導(dǎo)航欄顏色") // 導(dǎo)航欄顏色
        UINavigationBar.appearance().titleTextAttributes = [.foregroundColor: UIColor.white] //導(dǎo)航欄上的title的顏色
        //background不建議使用,喜歡可自己嘗試
}
                     
}
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容