【发布时间】:2020-12-22 03:23:19
【问题描述】:
我有一个动画按钮的问题。我使用 ForEach 方法创建了它们。我的应用程序的布局由 3 个标志组成。我们有文字说我们必须选择特定国家的国旗,如果我们选择正确的国旗,我们就会获得积分。
我想在按下特定按钮时为其设置动画。答案是否正确并不重要。
我创建这些按钮的代码如下所示:
ForEach(0 ..< 3) { number in
Button(action: {
withAnimation {
if number == self.correctAnswer {
self.animationAmount += 360
}
}
self.flagTapped(number)
}) {
ImageView(myImage: self.countries[number])
}
.rotation3DEffect(.degrees(number == self.correctAnswer ? self.animationAmount : 0), axis: (x: 0, y: 1, z: 0))
.opacity(self.showAnimation && number != self.correctAnswer ? 0.25 : 1)
.background(self.showAnimation && number != self.correctAnswer ? Color.red: nil)
}
self.flagTapped(number) 将showAnimation 切换为true。
【问题讨论】:
标签: swift animation button foreach swiftui