我需要帮助删除代码中我无法识别的图标

问题描述 投票:0回答:1

我是 Swift 新手,正在构建我的第一个应用程序,正如您在图片中看到的,有两个“chevron.right”图标,但一个较小,并且附加在卡片的边缘,在代码我只添加了这个:

Image(systemName: "chevron.right")
    .foregroundColor(.gray)

我不知道另一个图标来自哪里,我想它是 NavigationLink 的属性,但我不确定,你能帮我删除它吗?The icon in the red rectangle is the icon that I want remove

                                HStack(spacing: 16) {
                                    ZStack {
                                        Circle()
                                            .fill(mainColor.opacity(0.1))
                                            .frame(width: 50, height: 50)
                                        Image(systemName: "cube.box.fill")
                                            .foregroundColor(mainColor)
                                            .font(.title2)
                                    }
                                    
                                    VStack(alignment: .leading, spacing: 8) {
                                        Text(item.itemDescription)
                                            .font(.headline)
                                            .foregroundColor(.primary)
                                            .lineLimit(1)
                                        
                                        HStack {
                                            Label(item.brand.isEmpty ? "N/A" : item.brand, systemImage: "tag.fill")
                                                .font(.subheadline)
                                                .foregroundColor(.secondary)
                                                .lineLimit(1)
                                            
                                            Spacer()
                                            
                                            Label(item.conditionO.isEmpty ? "N/A" : item.conditionO, systemImage: "checkmark.circle.fill")
                                                .font(.subheadline)
                                                .foregroundColor(
                                                    item.conditionO.lowercased() == "new" ? .green :
                                                    item.conditionO.lowercased() == "used" ? .orange : .gray
                                                )
                                                .lineLimit(1)
                                        }
                                    }
                                    .padding(.leading, 8)
                                    
                                    Spacer()
                                    
                                    Image(systemName: "chevron.right")
                                        .foregroundColor(.gray)
                                }
                                .padding(.vertical, 12)
                            } ```
swift xcode swiftui
1个回答
0
投票

额外的“chevron.right”图标由

NavigationLink
自动添加。要删除它,您可以使用
NavigationLink
内的自定义按钮并根据您的需要设置样式,从而有效隐藏默认的附件视图。

修复方法如下:

解决方案:

HStack
包裹在
NavigationLink
内并设置
.buttonStyle(.plain)
以避免使用默认配件。

示例代码:


NavigationLink(destination: Text("Detail View")) {
    HStack(spacing: 16) {
        ZStack {
            Circle()
                .fill(Color.blue.opacity(0.1))
                .frame(width: 50, height: 50)
            Image(systemName: "cube.box.fill")
                .foregroundColor(.blue)
                .font(.title2)
        }

        VStack(alignment: .leading, spacing: 8) {
            Text("Item Description")
                .font(.headline)
                .foregroundColor(.primary)
                .lineLimit(1)

            HStack {
                Label("Brand Name", systemImage: "tag.fill")
                    .font(.subheadline)
                    .foregroundColor(.secondary)
                    .lineLimit(1)
                
                Spacer()
                
                Label("New", systemImage: "checkmark.circle.fill")
                    .font(.subheadline)
                    .foregroundColor(.green)
                    .lineLimit(1)
            }
        }
        .padding(.leading, 8)
        
        Spacer()
        
        Image(systemName: "chevron.right")
            .foregroundColor(.gray)
    }
    .padding(.vertical, 12)
}
.buttonStyle(.plain)

这可以防止

NavigationLink
自动添加额外的“chevron.right”。

© www.soinside.com 2019 - 2024. All rights reserved.