【发布时间】:2020-04-17 00:40:50
【问题描述】:
由于某种原因,我的 NavigationLink 似乎只能在长按时工作。这是视图的 sn-p:
struct MainView: View {
@EnvironmentObject var user: UserObservable
var body: some View {
VStack {
NavigationView {
List(user.items, id: \.self) { item in
NavigationLink(destination: ItemView(item: item)) {
Text(item.name)
}
}
.navigationBarTitle("\(user.displayName)'s items")
.navigationBarItems(leading: AddItemViewButton().environmentObject(user),
trailing: MainViewActionSheet().environmentObject(user))
}
}
}
}
列表已正确填充,但点击它们没有任何作用。按住然后松开会打开正确的目的地。
有没有其他人见过这样的事情?这是在 Xcode 11.4.1 和 iOS 13.4.1 上。
【问题讨论】:
-
如果您将 NavigationView 放在 VStack 之前,您会得到相同的行为吗?
-
如果我将 VStack 放在 NavigationView 中,或者完全删除 VStack 包装器(我有点忘记它在那里),错误仍然存在。同样的代码也适用于以前版本的 Xcode,这很奇怪。
-
您的代码看起来正确。如果评论
navigationBarItems,行为是否相同?如果是,那么它似乎更新了 Xcode 缺陷。我还没有更新。
标签: ios swift swiftui navigationlink