SwiftUI 2.0 List with children – how to make the tappable area of the disclosure button cover the whole list item

Here is a demo of approach (of course in your project you’d move expand/collapse state into view model) struct DemoDisclosureGroups: View { let items: [Bookmark] = [.example1, .example2, .example3] @State private var flags: [Bool] = [false, false, false] var body: some View { List { ForEach(Array(items.enumerated()), id: \.1.id) { i, group in DisclosureGroup(isExpanded: $flags[i]) { … Read more