gpt4 book ai didi

swift - 从异步后台任务设置 UIProgressView

转载 作者:行者123 更新时间:2023-11-28 15:19:24 25 4
gpt4 key购买 nike

我是 Swift 的新手,构建了一个小型应用程序,将一些 HealthKit 数据传输到自构建的网络服务。我在我的 Main.storyboard 中放置了一个 UIProgressView 并将其连接到 ViewController.swift:

@IBOutlet weak var syncHealthProgress: UIProgressView!

在一个 Action 中,有 6 次通过 ViewController 之外的多个步骤调用 Web 服务。首先,我获取在后台完成的健康数据 (HKStatisticsCollectionQuery)。在后台任务中,我获取结果并使用异步完成的数据 (URLSession) 进行 API 调用。

我想做的事:每次API调用成功我都想把进度提高1/6。

那么最好的做法是什么?无法从主线程外部访问 UI(试图将 syncHealthProgress 作为参数向下传输到 API 调用,这看起来很脏而且不起作用)。

有什么提示吗?

最佳答案

如果您只是想确保您的 UI 更新逻辑在主线程上运行,那么只需执行以下操作:

DispatchQueue.main.async {
// code to run on main queue
}

关于swift - 从异步后台任务设置 UIProgressView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46285410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com