gpt4 book ai didi

ios - 如何在 SwiftUI 中更改导航栏标题的文本属性?

转载 作者:行者123 更新时间:2023-11-28 19:26:10 32 4
gpt4 key购买 nike

最近,我一直在研究新的 SwiftUI 框架。

我对框架的工作原理有基本的了解,但我想不出更改导航栏标题属性的方法。

我使用的是最新的 Xcode 11 beta 5 和相应的 swift/swiftUI 版本

我已经尝试了一些东西。我尝试的第一件事是只向文本添加修饰符,但 SwiftUI 似乎以某种方式忽略了导航栏环境中的修饰符。

我尝试的第二件事是通过 UINavigationBar.apperance().titleTextAttributes = ...

更改标题属性

但他们似乎在最新的测试版中删除了自定义 UINavigationBar 的 titleTextAttributes 的能力。

//First thing:
List(myData) {
...
}
.navigationBarTitle(Text("My title").font(myFont))


// Second thing
UINavigationBar.appearance().titleTextAttributes = myAttrs

我希望导航栏标题有我的自定义字体,但它始终是苹果默认字体。

最佳答案

在SwiftUI中,此时我们不能直接改变navigationBarTitle字体,但是你可以这样改变navigationBar的外观,

struct YourView: View {
init() {
//Use this if NavigationBarTitle is with Large Font
UINavigationBar.appearance().largeTitleTextAttributes = [.font : UIFont(name: "Georgia-Bold", size: 20)!]

//Use this if NavigationBarTitle is with displayMode = .inline
//UINavigationBar.appearance().titleTextAttributes = [.font : UIFont(name: "Georgia-Bold", size: 20)!]
}

var body: some View {
NavigationView {
Text("Hello World!")
.navigationBarTitle(Text("Dashboard").font(.subheadline), displayMode: .large)
//.navigationBarTitle (Text("Dashboard"), displayMode: .inline)
}
}
}

希望对您有所帮助。谢谢!!

关于ios - 如何在 SwiftUI 中更改导航栏标题的文本属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57370107/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com