所以我试图在列表视图中为每个嵌入的行实现扩展/收缩行,结果发现列表视图单元格的动画不流畅。在查看本教程后,它建议使用带有 foreach 的滚动视图,因为它的动画效果更流畅。扩展/收缩工作正常,但只有当我第一次打开页面时才会出现意想不到的副作用。HStack 似乎在视图的左侧开始展平,并动画展开到其正常的起始位置。我已经放慢了视频中的动画速度,以便更容易看到,并且我删除了 ForEach,因为它似乎不是问题的原因。我不知道是什么原因造成的,谷歌搜索没有得到任何答案。这里有人有答案或至少有一些建议吗?非常感激
@State var showTemp: Bool = false
var body: some View {
ScrollView(.vertical, showsIndicators: false) {
HStack(alignment: .top) {
Text("Hello")
.font(.system(size: 32))
if showTemp {
VStack {
Text("Middle 1")
Text("Middle 2")
Text("Middle 3")
Text("Middle 4")
Text("Middle 5")
}
}
Spacer()
Text("Goodbye")
}
.border(Color.black, width: 2)
.onTapGesture {
self.showTemp.toggle()
}
.background(Color.blue)
.animation(.default)
}
.background(Color.green)
.onAppear(perform: loadMethod)
}