首页 > 解决方案 > 如何设置 NavigationView 符号按钮的颜色

问题描述

我目前有一个带有 SF 符号的嵌入式ToolbarItemGroup包含按钮的 NavigationView。我正在尝试将垃圾箱按钮的颜色更改为红色。

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)没有错字,我正在使用我写的这个扩展

谢谢 :)

标签: iosswiftmacosswiftuiswiftui-navigationview

解决方案


您可以添加.accentColor(.red)NavigationView. 虽然它会改变所有ToolBar项目的颜色。一个例子是

NavigationView {
 SomeViews
}
.accentColor(.red)

它成功了,如此处所示 在此处输入图像描述


推荐阅读