【发布时间】:2020-09-11 07:42:19
【问题描述】:
我已经实现了下面的设计,但是我发现了一个似乎微不足道的错误来找出解决方案。下面的代码可以绘制视图并能够正确显示数据,只有当我在本地获取数据时,而不是当我通过网络获取数据时。视图不会绘制卡片我必须单击另一个选项卡并返回带有卡片的视图。我试图找出问题可能是什么,并且我能够找出这个代码是源代码.frame(minHeight: 0, maxHeight: .infinity),它设置了高度。如果我删除这条线,我可以看到卡片,但有一个小腿高度。我试图将高度更改为静态值,但没有奏效。感谢您的帮助。
查看一个
ScrollView(.horizontal, showsIndicators: false){
HStack(spacing: 20){
ForEach(someIterator) { someViewModel in
CardView(myViewModel: someViewModel)
}
}.padding([.leading,.bottom,.trailing])
}
.frame(height: 420)
查看二
struct CardView: View {
@ObservedObject var myViewModel: MyViewModel
var body: some View {
VStack(){
HStack(){
Text(myViewModel.mymodel.value)
Text("Some text")
}
Text(myViewModel.mymodel.description)
}
.frame(minWidth: 0 , maxWidth: 327, maxHeight: 380)
.frame(minHeight: 0 , maxHeight: .infinity) // The issue
.background(Color("Blue"))
.cornerRadius(10)
}
}
【问题讨论】: