更改元素高度后,SwiftUI更新列表视图

时间:2020-09-17 17:09:54

标签: swift swiftui swiftui-list

我已经在SwiftUI中创建了一个列表,并且希望使列表的元素视图能够调整大小以显示更多信息。目前,当我更改高度时,它们只是开始相互重叠。我如何做到这一点,以便当视图的高度发生变化时,它可以更新列表元素之间的填充以保持其一致性。下面是我正在讨论的重叠部分和相关代码的屏幕截图:

enter image description here

这是我创建列表的地方:

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)

        }

0 个答案:

没有答案