我有一个要显示view
的列表。当我点击该行时,以下代码会产生一个生涩的animation
。我想进行修改以创建更平滑的动画。有没有一种方法可以平滑地对List
进行更改动画?
import SwiftUI
struct ContentView: View {
var body: some View {
List(0..<10){index in
ListItem(title: index)
}
}
}
struct ListItem: View {
@State var title: Int
@State var bOpen = false
var body: some View {
VStack{
Text("\(title+2) items")
withAnimation{
self.bOpen ? Options() : nil
}
}.onTapGesture {
self.bOpen.toggle()
}
}
}
struct Options: View {
var body: some View {
HStack {
Image(systemName:"circle.fill")
Image(systemName:"star")
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}