在点击NavigationLink时,它会稍微降低不透明度。有没有一种方法可以禁用此功能。我尝试使用.buttonStyle(PlainButtonStyle())
,但效果不理想。
它嵌入在scrollView中(出于可定制性的考虑,它优于List):
ScrollView {
ForEach(items){ item in
NavigationLink(destination: DetailView()){
HStack{
Text("title")
Spacer()
Image(systemName: "chevron.right")
}
.padding()
.background(
RoundedRectangle(cornerRadius: 10, style: continuous)
.foregroundColor(Color.gray)
)
}
}
}
答案 0 :(得分:7)
这是可能的解决方案。使用Xcode 11.4 / iOS 13.4进行了测试
使用仅返回标签视图的自定义按钮样式(不突出显示效果)
struct FlatLinkStyle: ButtonStyle {
func makeBody(configuration: Configuration) -> some View {
configuration.label
}
}
和
NavigationLink(destination: DetailView()){
HStack{
Text("title")
Spacer()
Image(systemName: "chevron.right")
}
.padding()
}.buttonStyle(FlatLinkStyle()) // << here !!