【发布时间】:2020-08-20 20:12:31
【问题描述】:
我在为我的视频重新编码按钮分层 iOS 动画时遇到了一些问题。我在其他标准录制按钮之后对其进行了建模,我希望它以实心圆开始,然后按下按钮,转换为不透明度脉冲的圆角矩形。
问题是我以某种方式对动画进行了排序,以使它们全部同时应用。
我已经尝试对这些动画重新排序,但无法确定哪种排序可以达到我想要的范围。
import SwiftUI
struct ContentView: View {
@State var recordComplete = false
@State private var rCorner: CGFloat = 100
@State private var rWidth: CGFloat = 70
@State private var rHeight: CGFloat = 70
@State private var opacityVal = 1.0
var body: some View {
HStack{
Button(action: {
self.rCorner = self.rCorner == 100 ? 12 : 100
self.rWidth = self.rWidth == 70 ? 45 : 70
self.rHeight = self.rHeight == 70 ? 45 : 70
self.recordComplete.toggle()
}) {
ZStack{
Circle()
.stroke(Color.red, lineWidth: 6)
.frame(width:85, height: 85)
RoundedRectangle(cornerRadius: rCorner)
.fill(Color.red)
.frame(width: rWidth, height: rHeight)
.opacity(opacityVal)
.animation(Animation.easeInOut(duration: 1).repeatForever(autoreverses: true)).onAppear{ self.opacityVal = 0.3 }
}
.padding(.vertical, 25)
}
}.animation(.spring(response: 0.5, dampingFraction: 2, blendDuration: 0.5))
}
}
一如既往地感谢您对这个问题的帮助!
【问题讨论】:
标签: ios swift animation swiftui