我在上层创建了一个带有按钮的列表视图。我想在用户单击 NavigationLink 后立即隐藏按钮并且在详细视图中看不到它。
我通过使用和控制它成功地实现了它,@State var showAddButton
如下所示,但如果主视图没有完全消失,按钮不会消失。onDisappear
onAppear
有没有人有任何其他解决方案来触发其他操作并保留 NavigationLink 的原始链接操作?
@State var showAddButton = true
var body: some View {
ZStack{
NavigationView{
List{
ForEach(items, id: \.id){ item in
NavigationLink(destination: WorkItemDetailView(item: item)){
WorkItemListRow(item: item)
}.onDisappear{self.showAddButton = false}
.onAppear{self.showAddButton = true}
}
}
.navigationBarTitle("List", displayMode: .inline)
}
if showAddButton {
FloatAddButton()
}
}
}