列表与 VStack(在 ScrollView 中)
Posted
技术标签:
【中文标题】列表与 VStack(在 ScrollView 中)【英文标题】:List vs VStack (in ScrollView) 【发布时间】:2020-02-20 05:23:30 【问题描述】:我更喜欢使用VStack + ScrollView
来创建更复杂的类似新闻源的 UI。
例如,我可以自定义分隔线,并在List
中去掉NavigationLink
附带的披露指示符。
但是在性能方面,两者之间有什么区别吗?
假设 List
用于简单的列表 UI,VStack
用于更复杂的 UI 是否正确,就像 TableView 和 CollectionView 过去那样?
【问题讨论】:
简而言之,没有。List
类似于(或者如果更喜欢,基于)UITableView
,因此可以重复使用单元格等。但 ScrollView
只是滚动视图 - 它包含/构造所有内容,并且必须具有一些初始内容。
【参考方案1】:
List 可能是由 TableView 实现的,它是动态的。目前,ScrollView + VStack 不是动态的,但 ScrollView + LazyVStack 是动态的。
未来,ScrollView + LazyVStack 可能是更好的选择。
【讨论】:
以上是关于列表与 VStack(在 ScrollView 中)的主要内容,如果未能解决你的问题,请参考以下文章
隐藏 TabBar 时,ScrollView 与 VStack 中的文本重叠
SwiftUI中ScrollView底部对齐内的VStack
VStack 不填充 ScrollView 中的屏幕宽度,填充 List
SwiftUI,ScrollView 在 ZStack 中向上推送 VStack 图像