【发布时间】:2022-12-19 13:23:34
【问题描述】:
我在 iOS 16.2 模拟器和 iOS 16.1.2 设备上运行 xCode 14.2。
在我的应用程序中,我的子列表中有 NavigationLinks,这些子列表实现为嵌套的 Lists。更新我的 xCode 后,NavigationLinks 突然变得无法点击。看起来触摸目标发生了一些问题,无法点击 NavigationLink 本身,并且只有一些微小的背景条是可点击的。
这是重现该问题的示例代码:
import SwiftUI
@available(iOS 16.0, *)
struct ContentView: View {
var body: some View {
NavigationStack {
List {
List {
NavigationLink("Mint") { ColorDetail(color: .mint) }
NavigationLink("Pink") { ColorDetail(color: .pink) }
NavigationLink("Teal") { ColorDetail(color: .teal) }
}.listStyle(.plain)
List {
NavigationLink("Red") { ColorDetail(color: .red) }
NavigationLink("Blue") { ColorDetail(color: .blue) }
NavigationLink("Black") { ColorDetail(color: .black) }
}.listStyle(.plain)
}.listStyle(.plain)
.navigationTitle("Colors")
}
}
}
struct ColorDetail: View {
var color: Color
var body: some View {
color.navigationTitle(color.description)
}
}
这是它的截屏视频:https://imgur.com/a/SrJ1IbO。基本上,大部分颜色标签是不可点击的,但边缘是可点击的。但即使单击它们,它们的行为也很奇怪,会触发多个链接。 NavigationStack 和 NavigationView 都会发生这种情况。
有人可以深入了解为什么会发生这种情况以及如何解决它吗?它在 < iOS 15 上运行良好
【问题讨论】:
标签: swiftui swiftui-navigationlink swiftui-navigationview ios16 swiftui-navigationstack