我似乎在将 aNavigationLink
重新格式化为Form
. MyNavigationLink
是通过isActive
按下切换按钮来激活的showNext
。
问题是,NavigationLink
即使按钮不存在,似乎也可以自行激活,方法是点击Form
似乎NavigationLink
为EmptyView
. 似乎Form
甚至为EmptyViews
.
所以我在想可能有一些可能的解决方案,但我不确定这些是否可能:
(1) 在不禁用导航行为的情况下,以某种方式完全隐藏为NavigationLink
/创建的行。EmptyView
(2) 覆盖的Form
格式NavigationLink
,使其在点击时不会被激活。
编辑:似乎选项 2 是可能的,.disabled(true)
但空白部分仍然可见,这在这似乎有点 hacky 之上是不可取的。
struct FormView : View {
@State var showNext: Bool = false
var body: some View {
NavigationView {
Form {
Section {
VStack {
Text("Hello")
NavigationLink(destination: Text("Detail View"), isActive: $showNext)
{ EmptyView() }
}
}
}
}
}
}