swiftUI 折叠扩展组件

326 阅读1分钟
struct DisclosureView: View {
    
    @State private var isExpanded:Bool = true
    
    private let faq = [
        (
            id:1,
            question: "如何把大象装进冰箱?",
            answer: "第一,先把冰箱打开.第二,把大象装进去.第三,把冰箱门关上."
        ),
        (
            id:2,
            question: "如何把企鹅装进冰箱?",
            answer: "第一,先把冰箱打开。第二,把大象拿进去。第三,把企鹅装进去。第三,把冰箱门关上。"
        ),
        (
            id:3,
            question: "动物森林要举行动物大会,有一只动物缺席了,是什么动物?",
            answer: "企鹅,因为它在冰箱里面。"
        )
    ]
    
    
    var body: some View {
        
        List(faq, id: \.id) { item in
            
            DisclosureGroup(isExpanded: $isExpanded) {
                Text("\(item.answer)")
            } label: {
                Text("\(item.question)")
            }
        }
        
    }
}

struct DisclosureView_Previews: PreviewProvider {
    static var previews: some View {
        DisclosureView()
    }
}

截屏2022-11-14 09.44.08.png