Swiftui 迅捷-消失的原因
假设我们在NavigationView堆栈中有一个视图。 此视图具有onDisappear处理程序。 当该视图被堆栈中的另一个视图覆盖时,以及当我们的视图从堆栈中弹出时,系统调用该处理程序 有没有办法找到真正的原因——是被掩盖了还是被揭穿了 好的,一些代码:Swiftui 迅捷-消失的原因,swiftui,swiftui-navigationview,Swiftui,Swiftui Navigationview,假设我们在NavigationView堆栈中有一个视图。 此视图具有onDisappear处理程序。 当该视图被堆栈中的另一个视图覆盖时,以及当我们的视图从堆栈中弹出时,系统调用该处理程序 有没有办法找到真正的原因——是被掩盖了还是被揭穿了 好的,一些代码: var body: some View { NavigationView { NavigationLink(destination: DetailView()) {
var body: some View {
NavigationView
{
NavigationLink(destination: DetailView())
{
Text("View details")
}
}
.onAppear
{
if <NavigationView was recently created?> // the essence of the question
{
print("NavigationView was recently created")
}
else
{
print("DetailView popped and disappeared")
}
}
}
var主体:一些视图{
导航视图
{
NavigationLink(目标:DetailView())
{
文本(“查看详细信息”)
}
}
奥纳佩尔先生
{
如果//问题的实质是什么
{
打印(“导航视图是最近创建的”)
}
其他的
{
打印(“详细视图弹出并消失”)
}
}
}
您只需在视图的.on外观上调用所需的操作,该视图将覆盖或弹出到NavigationView堆栈的顶部。它应该按照你想要的方式工作。请随意与您正在尝试执行的操作共享一些代码。好的,假设,我将在。onAppear中完成。当这个视图被推送或子视图被弹出时,cat I如何区分这些情况?对不起,我不明白你在这里想做什么。你能给出一些你想要实现的代码吗?