DisclosureGroup
根据disclose控件的状态显示或隐藏另一个内容视图的视图。
struct DisclosureGroup<Label, Content> where Label : View, Content : View
使用教程
公开组视图由标识内容的标签和显示和隐藏内容的控件组成。 显示内容会使公开组处于“展开”状态,隐藏内容会使公开组“折叠”。
在以下示例中,公开组包含两个切换按钮和一个嵌入式公开组。 顶级公开组使用绑定属性topLevelExpanded公开其展开状态。 通过扩展公开组,用户可以使用切换按钮来更新toggleStates结构的状态。
示例代码
struct ContentView: View {
struct ToggleStates {
var oneIsOn: Bool = false
var twoIsOn: Bool = true
}
@State private var toggleStates = ToggleStates()
@State var selectedTab = 0
@StateObject var pathManager = PathManager()
var body: some View {
List{
DisclosureGroup("点击展开",isExpanded: $toggleStates.oneIsOn){
Text("子菜单")
DisclosureGroup("第二级:点击展开"){
Text("子菜单")
Text("子菜单")
Text("子菜单")
}
}
DisclosureGroup("点击展开"){
Text("子菜单")
Toggle("toggle", isOn: $toggleStates.twoIsOn)
DisclosureGroup("第二级:点击展开"){
Text("子菜单")
Text("子菜单")
Text("子菜单")
}
}
}
}
}