swiftui - 导航回列表 (SwiftUI) 后,选定列表行的背景保持灰色(选中)。iOS14 + Xcode12
问题描述
从详细视图返回后,选定的行保持灰色。在模拟器和真实设备上都发生,仅在 iOS 14 上。有谁知道如何删除它,使其行为与 iOS 13 相同(不保持选中状态)?这是项目中唯一的代码。(没有其他导航或任何东西)。
let items = ["item1", "item2"]
struct ContentView: View {
var body: some View {
NavigationView {
VStack {
Text("Hello")
List(items, id: \.self) { item in
NavigationLink(destination: Text(item)) {
Text(item)
}
}
.listStyle(PlainListStyle())
}
}
// .navigationViewStyle(StackNavigationViewStyle()) // didn't solve the problem
}
}
解决方案
这就是诀窍。只需创建一个 ZStack 并在上方放置一个空按钮。
var body: some View {
List {
ForEach(data, id: \.self) { item in
ZStack {
Button("") {}
NavigationLink(destination: ItemView(item: item)) {
ItemRow(item: item)
}
}
}
}
}
推荐阅读
- javascript - Javascript array.reduce() 函数
- node.js - MongoDB SailsJS:如果 Model.create() 具有未声明的属性,则阻止它
- api - 有没有办法在重试期间在 KarateDSL 中传递新请求?谢谢,
- mysql - 查看mysql中其他多个表中是否存在主键
- android - 从时间戳获取android中的时差
- python - 从 tkinter 按钮中的方法列表中选择
- android - 任务“:flutter_twitter:verifyReleaseResources”执行失败
- reactjs - 如何从firebase数据库中的开始和结束索引中检索行
- python - 从json文件中提取数据时,如何为每个输入文件获取相应的输出文本文件。?
- vb.net - 如何检查 tabcontrol 页面中的空控件?