【问题标题】:Why does item with navigation link in list become blue?为什么列表中带有导航链接的项目变成蓝色?
【发布时间】:2019-11-02 21:45:36
【问题描述】:

我在导航链接的列表(行)中嵌入了我的项目

我的物品变成了蓝色click

这是我的代码:

ToysRow.swift

struct ToyRow: View {
    var category: String
    var toys:[Toy]

    var body: some View {

        Group {
            VStack{

                VStack(alignment: .leading){
                    Text(category).padding().font(.largeTitle)
                    ScrollView(.horizontal, showsIndicators: false){
                        HStack(alignment: .top){
                            ForEach(self.toys){
                                toy1 in
                                NavigationLink(destination: ToyDetail(toy: toy1)) {
                                    ToyItem(toy: toy1)
                                }.padding()

                            }
                        }
                    }

                }
            }
        }

    }
}

所以创建 NavigationView 没有帮助 – 它变成灰色

【问题讨论】:

    标签: swift swiftui


    【解决方案1】:

    因为默认accentColor('aka'tintColor

    带代码:

    将此修饰符添加到您的Image

    .renderingMode(.original)
    

    无代码:

    1. 从项目导航器转到Assets.xcassets,然后在此处选择您的图像
    2. 在右侧面板中,属性检查器
    3. 渲染为选择Original Image

    记住您应该始终对您不想在其上应用任何颜色的所有图像执行此操作。

    对于文本和图标:

    使用.accentColor()修饰符

    【讨论】:

    • 我应该如何处理文本?只需手动更改颜色?
    • 使用.accentColor(),正如我在答案开头提到的那样。我再次添加到答案的末尾;)
    【解决方案2】:

    文本使用

     .foregroundColor( Color(UIColor.label))
    

    【讨论】:

      猜你喜欢
      • 2017-07-28
      • 1970-01-01
      • 2012-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多