【发布时间】:2020-08-19 17:32:59
【问题描述】:
我正在尝试在鼠标悬停时为单个项目设置动画。我遇到的问题是,每个 项目在鼠标悬停时都会被动画化,而不仅仅是那个特定的项目。 这是我所拥有的:
struct ContentView : View {
@State var hovered = false
var body: some View {
VStack(spacing: 90) {
ForEach(0..<2) {_ in
HStack(spacing: 90) {
ForEach(0..<4) {_ in
Circle().fill(Color.red).frame(width: 50, height: 50)
.scaleEffect(self.hovered ? 2.0 : 1.0)
.animation(.default)
.onHover { hover in
print("Mouse hover: \(hover)")
self.hovered.toggle()
}
}
}
}
}
.frame(minWidth:300,maxWidth:.infinity,minHeight:300,maxHeight:.infinity)
}
}
【问题讨论】: