Ios 如何在SwiftUI中不滚动显示整个列表

Ios 如何在SwiftUI中不滚动显示整个列表,ios,swift,swiftui,Ios,Swift,Swiftui,有没有办法使列表的高度自动匹配其内容 我有一个列表,将显示一些项目(我不知道提前多少)。默认情况下,当我创建列表时,它没有足够的高度,而是显示1-3个项目并滚动显示更多内容。我想禁用滚动行为 我尝试将框架高度硬编码为某个较大的值,我确信该值将适合所有项目,但这并不理想。我还可以从itemHeight*numItems计算框架高度(如果我将所有项目本身设置为指定的高度),但在我的情况下,项目可以具有不同的高度 也许有更简单的解决办法 我查看了文档,也尝试了.fixedSize()、不同的列表样式等

有没有办法使列表的高度自动匹配其内容

我有一个列表,将显示一些项目(我不知道提前多少)。默认情况下,当我创建列表时,它没有足够的高度,而是显示1-3个项目并滚动显示更多内容。我想禁用滚动行为

我尝试将框架高度硬编码为某个较大的值,我确信该值将适合所有项目,但这并不理想。我还可以从itemHeight*numItems计算框架高度(如果我将所有项目本身设置为指定的高度),但在我的情况下,项目可以具有不同的高度

也许有更简单的解决办法


我查看了文档,也尝试了.fixedSize()、不同的列表样式等。这些样式对我不起作用。

你应该使用
VStack
而不是
列表。这将消除滚动行为,但仍将提供垂直组织的单元格。如果您在
List

中使用的是
ForEach
inside,那么您仍然可以使用
ForEach
inside,对吗?如果是,您是否尝试过
tableViewHeightConstraint.constant=tableView.contentSize.height
之后不要忘记
layoutIfNeeded()
。我指的是SwiftUI List()是您想要的groupListStyle吗?@E.Coms我尝试过,但它仍然保持滚动。我已经在那个屏幕上有了一个滚动视图,我正在寻找一种方法,使列表具有不滚动显示所有项目所需的高度。这实际上是完美的!作为说明,我希望在列表中有一个类似的分隔符,所以我只是将该项包装在一个VStack中,并在底部添加一个矩形。这就像一个符咒!非常感谢。分隔器非常类似于分隔器。你可能也想看看这个。