Apa persyaratan untuk Daftar yang dapat diperluas gratis di SwiftUI?
Di suatu tempat di kode saya, saya memiliki daftar yang cukup standar ini dengan bagian:
var body: some View {
List {
ForEach(userData.groupedBookings) { group in
Section(header: Text(group.key)) {
ForEach(group.items) { booking in
LessonRow(booking: booking)
}
}
}
}
}
Entah bagaimana dengan kode ini bagian-bagiannya dapat diperluas / diciutkan, yang membuat saya senang, tetapi saya tidak tahu mengapa. Saya sangat frustrasi karena saya ingin mereproduksi perilaku ini di tempat lain dengan kode serupa dan tidak mendapatkan perluasan / penciutan.
Apa persyaratan untuk mendapatkan ini secara otomatis?
Jawaban
Ini diaktifkan oleh gaya daftar bilah sisi (yang dalam beberapa kondisi dianggap sebagai default), yang dapat Anda gunakan secara eksplisit
List {
ForEach(userData.groupedBookings) { group in
Section(header: Text(group.key)) {
ForEach(group.items) { booking in
LessonRow(booking: booking)
}
}
}
}
.listStyle(SidebarListStyle())
sebagai alternatif, Anda dapat menggunakan DisclosureGroup
secara eksplisit untuk memiliki perilaku pengungkapan untuk bagian, seperti dihttps://stackoverflow.com/a/63228810/12299030