小编Adr*_*nco的帖子

当视图出现在 SwiftUI 中时禁用动画

我在尝试在 SwiftUI 中显示自定义加载视图时遇到问题。我创建了一个自定义结构视图 OrangeActivityIndi​​cator:

struct OrangeActivityIndicator: View {
    var style = StrokeStyle(lineWidth: 6, lineCap: .round)
    @State var animate = false
    let orangeColor = Color.orOrangeColor
    let orangeColorOpaque = Color.orOrangeColor.opacity(0.5)
    
    init(lineWidth: CGFloat = 6) {
        style.lineWidth = lineWidth
    }
    
    var body: some View {
        ZStack {
            Circle()
                .trim(from: 0, to: 0.7)
                .stroke(
                    AngularGradient(gradient: .init(colors: [orangeColor, orangeColorOpaque]), center: .center), style: style
                )
                .rotationEffect(Angle(degrees: animate ? 360 : 0))
                .animation(Animation.linear(duration: 0.7).repeatForever(autoreverses: false))
        }.onAppear() {
            self.animate.toggle()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我在不同的屏幕或视图中使用它,我的问题是它看起来很奇怪,例如在应用程序的 CampaignsView 中,当服务器调用正在进行时我会显示它。

struct CampaignsView: View …
Run Code Online (Sandbox Code Playgroud)

swift swiftui swiftui-list

6
推荐指数
1
解决办法
9416
查看次数

标签 统计

swift ×1

swiftui ×1

swiftui-list ×1