SwiftUI:如何在单击按钮时关闭(而不是modaly)子视图?

SwiftUI:如何在单击按钮时关闭(而不是modaly)子视图?,swiftui,Swiftui,我有一个messageView,它显示在带有VStack的主视图(不是modaly-作为主视图的子视图)上,需要在单击按钮时关闭。我找到了如何使用SwiftUI模式显示和取消视图,但没有找到任何针对这种情况的特定内容。如果您可以提供示例代码来演示您正在尝试的内容,那就更容易了 如果我错了,请纠正我,但我的理解是,一旦用户点击按钮,您希望隐藏视图 为此,可以使用@State属性包装器 struct MainView: View { @State private var isMessageVi

我有一个messageView,它显示在带有VStack的主视图(不是modaly-作为主视图的子视图)上,需要在单击按钮时关闭。我找到了如何使用SwiftUI模式显示和取消视图,但没有找到任何针对这种情况的特定内容。

如果您可以提供示例代码来演示您正在尝试的内容,那就更容易了

如果我错了,请纠正我,但我的理解是,一旦用户点击按钮,您希望隐藏视图

为此,可以使用@State属性包装器

struct MainView: View {
   @State private var isMessageViewHidden: Bool = false

   var body: some View {
        Button(action: {
            self.isMessageViewHidden = true
        }) {
            Text("itle")
        }
        if !isMessageViewHidden {
            MessageView()
        }
    } 
}

我设法解决了这个问题,就像这样,状态用于显示和隐藏子视图。谢谢很高兴听到@Jay!