gpt4 book ai didi

ios - 下载网页内容后快速更改标签文本

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

我有这段代码,我想用来自网络的文本更改标签的内容

var url = NSURL(string: "SOME_URL");
var task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: {
(data, response, error) -> Void in


if error == nil {
self.label.text = "SOME_TEXT" // not working

dispatch_async(dispatch_get_main_queue()){
self.label.text = "SOME_TEXT" // working
}

}
else{
println("Error")
}

})

task.resume()

为什么我必须使用 dispatch_async(dispatch_get_main_queue()){ ... } 来更改标签的内容?

最佳答案

iOS 的原则:你只有 1 个线程可以修改你的 UI。它被称为 UI 线程。每当您要更改 UI 内容时,必须在 UI Thread 中调用所有更改您的 UI 内容的函数。在您的情况下,处理程序在后台线程中执行,因此您必须将 self.label.text = "SOME_TEXT" 放在 UI 线程中。

关于ios - 下载网页内容后快速更改标签文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29220877/

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