我已经在SwiftUI中创建了一个列表,并且希望使列表的元素视图能够调整大小以显示更多信息。目前,当我更改高度时,它们只是开始相互重叠。我如何做到这一点,以便当视图的高度发生变化时,它可以更新列表元素之间的填充以保持其一致性。下面是我正在讨论的重叠部分和相关代码的屏幕截图:
这是我创建列表的地方:
List{
//loop through task cards
ForEach(self.tasks, id: \.id) { task in
task
}
}
这是列表中显示的任务卡的正文代码:
var height : CGFloat = 105
var body: some View {
RoundedRectangle(cornerRadius: 10)
.foregroundColor(Color.white)
.frame(height: self.completedLongPress ? self.height + 50 : self.height) // here is where height is changed
.overlay(
//content added in here (I don't think it's particularly important for the problem, but will edit if it's needed)
)
.gesture(self.longPress)
}