1

我在 SwiftUI 中使用 List 并注意到当我将它放在 ForEach 循环中时它没有出现(值得注意的是,这个 ForEach 循环在 DisclosureGroup 中),但是,当我添加一个.frame(width: x, height: y)修饰符时,列表终于出现了。

在此处输入图像描述

如您所见,此列表的静态维度看起来不太好。什么是在 ForEach 循环中出现 List 的正确方法(我认为这意味着 List 的父级具有动态大小)?

这是我正在查看的代码:

DisclosureGroup {
    ...
    ForEach(someArr) { item in
        Text("Day \(item.number")
        
        let intArr = [1, 2, 3]
        List(intArr, id: \.self) { _ in
            Text("hi")
        }
        .frame(width: 300, height: 100)
    }
}

有人对我如何正确调整此列表的大小有任何指导吗?提前致谢。

4

1 回答 1

0

反过来做:使 List 成为最外层的元素。

List {
    DisclosureGroup {
    ...
        ForEach(someArr) { item in
            Text("Day \(item.number")
    
            let intArr = [1, 2, 3]
            ForEach(intArr, id: \.self) { _ in
                Text("hi")
            }
        }
    }
}
于 2022-01-25T21:12:18.497 回答