「SwiftUI」延迟执行代码

通过在调度队列中异步执行,实现延迟执行代码

 //3秒后执行
 DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 3){

 }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NVActivityIndicatorView 是一个第三方的开源库,可以在 SwiftUI 中使用。下面是一个简单的示例代码,演示如何在 SwiftUI 中使用 NVActivityIndicatorView。 首先,你需要将 NVActivityIndicatorView 导入到你的项目中。你可以使用 CocoaPods、Carthage 或手动下载并将其添加到你的项目中。 在导入 NVActivityIndicatorView 后,你可以在 SwiftUI 视图中创建一个包含 NVActivityIndicatorView 的 UIViewRepresentable,如下所示: ``` import SwiftUI import NVActivityIndicatorView struct ActivityIndicatorView: UIViewRepresentable { @Binding var isAnimating: Bool let type: NVActivityIndicatorType let color: UIColor let padding: CGFloat func makeUIView(context: Context) -> NVActivityIndicatorView { let view = NVActivityIndicatorView(frame: .zero, type: type, color: color, padding: padding) return view } func updateUIView(_ uiView: NVActivityIndicatorView, context: Context) { isAnimating ? uiView.startAnimating() : uiView.stopAnimating() } } ``` 在上面的代码中,我们创建了一个名为 ActivityIndicatorView 的 UIViewRepresentable。它包含四个参数: - isAnimating:一个布尔值,用于控制是否正在运行动画。 - type:一个 NVActivityIndicatorType 枚举值,用于指定活动指示器的类型。 - color:一个 UIColor 值,用于指定活动指示器的颜色。 - padding:一个 CGFloat 值,用于指定活动指示器的内边距。 在 makeUIView 方法中,我们创建了一个 NVActivityIndicatorView,并将其初始化为传入的参数。在 updateUIView 方法中,我们检查 isAnimating 的值,并相应地启动或停止活动指示器的动画。 现在,我们可以在 SwiftUI 视图中使用 ActivityIndicatorView。例如,我们可以创建一个包含活动指示器的 VStack,如下所示: ``` struct ContentView: View { @State var isLoading = false var body: some View { VStack { ActivityIndicatorView(isAnimating: $isLoading, type: .ballClipRotatePulse, color: .blue, padding: 20) Button(action: { self.isLoading.toggle() }) { Text("Toggle Animation") } } } } ``` 在上面的代码中,我们创建了一个名为 ContentView 的视图,并在其中包含了一个 VStack。VStack 包含一个 ActivityIndicatorView 和一个按钮,用于切换 isLoading 的值。当 isLoading 为 true 时,活动指示器将运行动画。当 isLoading 为 false 时,活动指示器将停止动画。 希望这个示例代码可以帮助你在 SwiftUI 中使用 NVActivityIndicatorView。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值