gpt4 book ai didi

swiftui - 如何使用 SwiftUI 中的 navigationBarLeading 位置更改 ToolbarItem 的颜色

转载 作者:行者123 更新时间:2023-12-03 22:47:44 28 4
gpt4 key购买 nike

我需要一个标题位于导航栏的左侧。我使用以下代码:

.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Text("Title")
.foregroundColor(.black)
}
}
问题是它显示为蓝色并显示为按钮。是否有可能以某种方式将其颜色更改为黑色? foregroundColor , accentColor不工作。另外,我尝试使用带有 Text("Title") 的禁用按钮里面。但在那种情况下它显示为灰色。不是颜色,也不是 PlainButtonStyle被应用。

最佳答案

默认情况下,如果您添加单个 Text它显示为 Button .
然后,要更改其颜色,您需要设置 accentColor NavigationView 的(因为此按钮显示在导航栏中):

struct ContentView: View {
var body: some View {
NavigationView {
Text("Test")
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Text("Title")
}
}
}
.accentColor(.black)
}
}
如果您不想更改 accentColor在整个 NavigationView 中,您可以执行以下操作:
NavigationView {
VStack {
//...
}
.accentColor(.accentColor)
}
.accentColor(.black)

但是,如果你想要这个 Text表现得像 Text而不像 Button您可以使用以下技巧:
ToolbarItem(placement: .navigationBarLeading) {
HStack {
Text("Title")
Text("")
}
.foregroundColor(.red)
}

关于swiftui - 如何使用 SwiftUI 中的 navigationBarLeading 位置更改 ToolbarItem 的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64467504/

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