如何在SwiftUI中有条件地显示视图中的项目

410 阅读1分钟

表单中常见的一件事是有一个切换键,当该切换键被启用时,显示一堆额外的选项。

你可以在 "设置 "应用程序中经常看到这种情况,例如,当你启用WiFi时。

你如何做到这一点呢?

首先创建一个带有Toggle 控件的Form 视图。

struct ContentView: View {
    @State private var enabled = false
    
    var body: some View {
        Form {
            Toggle("Enable?", isOn: $enabled)
        }
    }
}

然后在Toggle 视图后添加这个块。

if enabled {
    Section {
        Text("This appears only if enabled")
    }
}

像这样。

struct ContentView: View {
    @State private var enabled = false
    
    var body: some View {
        Form {
            Toggle("Enable?", isOn: $enabled)
            
            if enabled {
                Section {
                    Text("This appears only if enabled")
                }
            }
        }
    }
}

现在,当切换器被禁用时,文本视图将不可见。

但当你启用切换功能时,它就会出现。