Я пытаюсь создать простой динамический список, сгруппированный по разделам. (SwiftUI iOS13 Xcode11 beta 2)
Простой статический пример:
struct StaticListView : View {
var body: some View {
List {
Section(header: Text("Numbers"), footer: Text("...footer...")) {
Text("1")
Text("2")
Text("3")
}
Section(header: Text("Letters"), footer: Text("...footer...")) {
Text("a")
Text("b")
Text("c")
}
}
}
}
Как и ожидалось, отображается хороший список с верхними и нижними колонтитулами разделов.
Но когда я пытаюсь сделать это из динамического списка, например:
struct TestData: Identifiable {
var id = UUID()
var title: String
var items: [String]
}
struct ListView : View {
let mygroups = [
TestData(title: "Numbers", items: ["1","2","3"]),
TestData(title: "Letters", items: ["A","B","C"]),
TestData(title: "Symbols", items: ["€","%","&"])
]
var body: some View {
List (mygroups) { gr in
Section(header: Text(gr.title),
footer: Text("...footer...") ) {
ForEach(gr.items.identified(by: \.self)) { item in
Text(item)
}
}
}
}
}
Результатом является список только с 3 строками. Заголовок раздела, все ячейки содержимого и нижний колонтитул объединены по горизонтали в одну строку.
Чего мне не хватает?