SwiftUI: обнаружение нажатия кнопки возврата NavigationViewIOS

Программируем под IOS
Anonymous
SwiftUI: обнаружение нажатия кнопки возврата NavigationView

Сообщение Anonymous »

В SwiftUI я не смог найти способ определить, когда пользователь нажимает кнопку «Назад» по умолчанию в представлении навигации, когда я нахожусь внутри DetailView1 в этом коде:

Код: Выделить всё

struct RootView: View {
@State private var showDetails: Bool = false
var body: some View {
NavigationView {
VStack {
NavigationLink(destination: DetailView1(), isActive: $showDetails) {
Text("show DetailView1")
}
}
.navigationBarTitle("RootView")
}
}
}

struct DetailView1: View {
@State private var showDetails: Bool = false
var body: some View {
NavigationLink(destination: DetailView2(), isActive: $showDetails) {
Text("show DetailView2")
}
.navigationBarTitle("DetailView1")
}
}

struct DetailView2: View {
var body: some View {
Text("")
.navigationBarTitle("DetailView2")
}
}

Использование .onDisappear не решает проблему, поскольку его закрытие вызывается, когда представление удаляется или отправляется новое представление.

Подробнее здесь: https://stackoverflow.com/questions/619 ... tton-press

Вернуться в «IOS»