我正在使用 SwiftUI,希望在点击按钮时能够返回到之前的 View ,就像我们在 UINavigationController
中使用 popViewController
一样。
到目前为止有提供的方法吗?
我也尝试过使用 NavigationDestinationLink
来执行此操作,但没有成功。
struct AView: View {
var body: some View {
NavigationView {
NavigationButton(destination: BView()) {
Text("Go to B")
}
}
}
}
struct BView: View {
var body: some View {
Button(action: {
// Trying to go back to the previous view
// previously: navigationController.popViewController(animated: true)
}) {
Text("Come back to A")
}
}
}
最佳答案
按如下方式修改您的 BView
结构。该按钮的执行方式与 UIKit 中的 popViewController
相同。
struct BView: View {
@Environment(\.presentationMode) var presentationMode
var body: some View {
Button("Come back to A") {
presentationMode.wrappedValue.dismiss()
}
}
}
关于SwiftUI - SwiftUI 中有等效的 popViewController 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56552939/