iTranslated by AI
The content below is an AI-generated translation. This is an experimental feature, and may contain errors. View original article
🍎
Updating SwiftUI Views from Background Threads
When building apps with SwiftUI, you may sometimes want to update the appearance of a View after a background process completes.
However, if you try to make changes directly from a background thread, you will receive a warning:
Publishing changes from background threads is not allowed; make sure to publish values from the main thread (via operators like receive(on:)) on model updates.
In such cases, you should update the View from the main thread as shown below:
DispatchQueue.main.async {
// Operations related to the View
}
I have summarized the knowledge I gained from two and a half years of daily development at home! Please take a look if you are interested.
Discussion