swiftui - 如何在 SwiftUI NavigationLink 中删除不透明动画
问题描述
点击 NavigationLink 时,它会稍微降低不透明度。有没有办法禁用它。我尝试使用.buttonStyle(PlainButtonStyle())
,但没有达到预期的效果。
它嵌入在一个滚动视图中(为了可定制性优先于列表):
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)
)
}
}
}
解决方案
这是可能的解决方案。使用 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 !!
推荐阅读
- highcharts - 如何根据值在highmap highchart中添加颜色
- typescript - TypeError:没有'new'就不能调用类构造函数MixinStrategy
- java - 可过滤在 Recyclerview 中无法按预期工作
- python - 熊猫 to_datetime() 未检测到列
- wordpress - 迁移我的 wordpress 后,模板向函数发送致命错误调用
- r - 用 afex 重复测量 Anova - 数组扩展不相等?
- c# - WPF将值从动态图像发送到代码后面?
- drush - SQLSTATE[HY000] [2002] Drush 命令不起作用 - DDEV vanilla Drupal 8 安装
- linux - Linux:搜索旧文件......将最旧的文件复制到某个位置......(+-验证副本)......然后删除它们
- excel - 如何修复“StringConverter 无法从 System.Double 转换。” 在 In\\UiPath