如何设置 NavigationView 符号按钮的颜色
Posted
技术标签:
【中文标题】如何设置 NavigationView 符号按钮的颜色【英文标题】:How to set the color of a NavigationView symbol button 【发布时间】:2021-07-08 17:45:34 【问题描述】:我目前有一个带有嵌入式 ToolbarItemGroup
的 NavigationView,其中包含带有 SF 符号的按钮。我正在尝试将垃圾箱按钮的颜色更改为红色。
var body: some View
NavigationView
Text("Hello, World!")
.navigationTitle("Today")
.toolbar
ToolbarItemGroup(placement: .navigationBarTrailing)
Button(action:
print("Add button was tapped")
)
HStack
Image(.add)
Button(action:
print("Trash button was tapped")
)
HStack
Image(.trash)
.foregroundColor(.red)
.accentColor(.red)
.foregroundColor(.red)
.accentColor(.red)
我似乎无法将垃圾图像符号的颜色设置为红色。 Image(.trash)
没有错字,我用的是this extension 我写的!
谢谢:)
【问题讨论】:
这能回答你的问题吗? How can I set an image tint in SwiftUI? 很遗憾没有。似乎没有任何解决方案会影响 NavigationView 符号。 using an inline menu 是否适合您? 【参考方案1】:您可以将.accentColor(.red)
添加到NavigationView
。虽然它会改变所有ToolBar
项目的颜色。一个例子是
NavigationView
SomeViews
.accentColor(.red)
它成功了,如下所示
【讨论】:
【参考方案2】:在 NavigationView 上工作的另一种方式。虽然它也会改变所有 ToolBar Items 的颜色。
struct ContentView: View
init()
UINavigationBar.appearance().tintColor = UIColor.magenta
// your code follows
【讨论】:
以上是关于如何设置 NavigationView 符号按钮的颜色的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 NavigationView 的情况下处理 sencha 触摸应用程序中的后退按钮?