Я пытаюсь сделать простую анимацию появления ар c. Это очень просто, и я понятия не имею, почему не работает. Я делаю эту структуру
struct Arc: Shape {
var center: CGPoint
var radius: CGFloat
var endAngle: Double
func path(in rect: CGRect) -> Path {
var path = Path()
path.addArc(center: center, radius: radius, startAngle: .degrees(180), endAngle: .degrees(endAngle), clockwise: false)
return path
}
}
И после этого загружаю ее вот так
struct TestView: View {
@State var endAngle: Double = 180
var body: some View {
Arc(center: CGPoint(x: 250, y: 250), radius: 100, endAngle: self.endAngle)
.stroke(Color.orange, lineWidth: 5)
.onAppear() {
withAnimation(Animation.linear(duration: 20)) {
self.endAngle = 0
}
}
}
}
Но это не анимация, только переход с 180 на 0. Я тоже пробую OnTapGesture, но также и делаю т работа. Сейчас я не знаю, почему это не работает
Мой ContentView прост
struct ContentView: View {
var body: some View {
TestView()
}
}
Как я могу это исправить?