在swiftUI目前官方?jīng)]有給出改背景色的借口丝蹭,所以就要自己寫了,更新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里面有未初始化的對象時纫版,就不能使用init(),可以如下寫客情,當(dāng)然其弊,無論什么情況都可用以下方法
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不建議使用膀斋,喜歡可自己嘗試
}
}
}