小编pmo*_*off的帖子

什么可能导致 SwiftUI 和 NavigationView 出现此动画错误?

我一直在尝试一些 SwiftUI 布局,我想尝试的一件事是创建一个简单的圆形进度环。在玩了一段时间代码之后,我设法让一切都按照我希望的方式工作,至少对于原型来说。当我将此视图嵌入 SwiftUI NavigationView 时,问题就出现了。现在,每次我在画布、模拟器或设备上运行该应用程序时,进度环的初始加载都会使整个视图缓慢向上滑动到位。

这是一个简单的原型,只是摆弄了新的 SwiftUI 工具。经过一些实验,我发现如果我删除 NavigationView,环的行为就像它从一开始就应该的那样。不过,我没有看到出现此问题的明显原因。

import SwiftUI

struct ProgressRing_ContentView: View {

@State var progressToggle = false
@State var progressRingEndingValue: CGFloat = 0.75

var ringColor: Color = Color.green
var ringWidth: CGFloat = 20
var ringSize: CGFloat = 200

var body: some View {
    TabView{
        NavigationView{
            VStack{

                Spacer()

                ZStack{
                    Circle()
                        .trim(from: 0, to: progressToggle ? progressRingEndingValue : 0)
                        .stroke(ringColor, style: StrokeStyle(lineWidth: ringWidth, lineCap: .round, lineJoin: .round))
                        .background(Circle().stroke(ringColor, lineWidth: ringWidth).opacity(0.2))
                        .frame(width: ringSize, height: ringSize)
                        .rotationEffect(.degrees(-90.0))
                        .animation(.easeInOut(duration: 1))
                        .onAppear() …
Run Code Online (Sandbox Code Playgroud)

animation swift navigationview swiftui

8
推荐指数
1
解决办法
2867
查看次数

标签 统计

animation ×1

navigationview ×1

swift ×1

swiftui ×1