Ios 滚动时,SwiftUI ScrollView内部列表将消失
如果我将多个水平Ios 滚动时,SwiftUI ScrollView内部列表将消失,ios,swift,listview,scrollview,swiftui,Ios,Swift,Listview,Scrollview,Swiftui,如果我将多个水平滚动视图放在列表中滚动时它们会消失。以下是一个例子: 以下是重现问题的代码: struct ContentView:View{ var body:一些观点{ 名单{ ForEach(0…100,id:\.self){uuin 滚动视图(.horizontal){ HStack{ 矩形().框架(宽度:100,高度:100) 矩形().框架(宽度:100,高度:100) 矩形().框架(宽度:100,高度:100) } } } } } } 我使用的是iOS 13.3。不幸的是,
滚动视图
放在列表中
滚动时它们会消失。以下是一个例子:
以下是重现问题的代码:
struct ContentView:View{
var body:一些观点{
名单{
ForEach(0…100,id:\.self){uuin
滚动视图(.horizontal){
HStack{
矩形().框架(宽度:100,高度:100)
矩形().框架(宽度:100,高度:100)
矩形().框架(宽度:100,高度:100)
}
}
}
}
}
}
我使用的是iOS 13.3。不幸的是,向
滚动视图
或HStack
添加帧没有帮助。有人知道解决这个问题的方法吗?这似乎是一个与项目重用相关的错误。您可以尝试修复列表和滚动视图中的id设置
List(array, id: \.self) { item in
Text("\(item)")
}.id(UUID().uuidString)
有关此修复的详细信息,请参阅和 我建议使用垂直
滚动视图
而不是列表
-否此问题(以及其他已知的基于列表的问题)@Asperi A列表
如果有许多项,性能会更好。此外,我不能将滚动视图的样式设置为类似于列表的样式(GroupedListStyle()
)。因此,仅仅使用滚动视图对我来说不是一个真正的解决方案。你有没有解决过这个问题?@ryansle没有,我还没有找到解决办法。@ThomasVos正是这个链接为我解决了这个问题:在我的情况下,只需将id设置为滚动视图就可以了。谢谢你的回答。非常感谢@卡伦卡拉佩蒂安