如何在 SwiftUI 中完全禁用 NavigationLink 的内容突出显示?

Mik*_*oon 6 swift navigationview swiftui swiftui-navigationlink

        NavigationLink(destination: DetailView()) {
            Image(systemName: "cloud.heavyrain")
                .foregroundColor(Color.accentColor)
                .font(.system(size: 66, weight: .regular))
        }
        .buttonStyle(PlainButtonStyle())
Run Code Online (Sandbox Code Playgroud)

在此示例中,.buttonStyle(PlainButtonStyle()) 修饰符将突出显示更改为非常温和但仍然可见的效果。

Mik*_*oon 18

我通过创建一个不带任何修饰符的自定义 ButtonStyle 提出了非常简单的解决方案:

struct EmptyButtonStyle: ButtonStyle {
    func makeBody(configuration: Self.Configuration) -> some View {
        configuration.label
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 你知道吗?你真是英雄!!多么美妙的解决方案啊!还有这么多人在寻找这个... (3认同)