swift - 在 Swift UI 中保存后导航回来
问题描述
我有一个简单的详细视图,用户可以在其中输入数据。按下保存按钮后,我希望应用程序导航回上一个列表视图。详细视图通过 NavigationLink 打开。我认为按钮的操作需要以某种方式进行调整。任何建议表示赞赏。
解决方案
为此,您需要Environment
在详细视图中获取一个变量:
@Environment(\.presentationMode) var presentationMode: Binding<PresentationMode>
然后在按钮的操作中调用它的关闭方法,如下所示:
self.presentationMode.wrappedValue.dismiss()
一个更详细的例子:
struct DetailView: View {
@Environment(\.presentationMode) var presentationMode: Binding<PresentationMode>
@State var someData = ""
var body: some View {
TextField("Placeholder", text: $someData)
Button(action: {
saveData()
self.presentationMode.wrappedValue.dismiss()
}) {
Text("Save data and go back")
}
}
}
推荐阅读
- matlab - 结合 2 个 MATLAB 结构
- hibernate - Spring Data JPA Ccould not initialize proxy - 在 .parallel() 中的不同线程中运行时没有会话
- python - python在具有三个元素的3D图形/元组中查找连接的组件?
- 3d - 如何在3d中获得点到平面的距离?
- c# - XAML 中的自定义字符串格式
- ios - 如何在我的 UITable 单元格上设置适当的约束。斯威夫特4
- visual-studio - Azure DevOps Pipeline 中的 $(System.DefaultWorkingDirectory) 在哪里
- laravel - Vue:将多个@click传递给组件
- flutter - 构建捆绑包/ Apk 已禁用
- python - 熊猫排序值