Ios Button.setTitle不';单击按钮后才能发生
我试图根据API的JSON响应更新按钮的标题 JSON请求以及按钮标题的设置在我的视图控制器的viewDidLoad中发生,但按钮标题在我单击按钮后才会更新 以前有人经历过吗 下面发生在视图did load内部Ios Button.setTitle不';单击按钮后才能发生,ios,swift,Ios,Swift,我试图根据API的JSON响应更新按钮的标题 JSON请求以及按钮标题的设置在我的视图控制器的viewDidLoad中发生,但按钮标题在我单击按钮后才会更新 以前有人经历过吗 下面发生在视图did load内部 session.dataTask(with: request) {data, response, err in if let data = data{ var json: Any do{ js
session.dataTask(with: request) {data, response, err in
if let data = data{
var json: Any
do{
json = try JSONSerialization.jsonObject(with: data)
//print(json)
guard let dictionary = json as? [String: Any] else{
print("oops")
return
}
guard let roster = Roster(json: dictionary) else{
print("oops2")
return
}
let member = roster.pickRandomMembers()
self.button.setTitle(member.first_name, for: .normal)
}
catch{
print(error)
}
}
}.resume()
试试这个
DispatchQueue.main.async()
将强制在主线程上执行内部的UI更新代码
DispatchQueue.main.async() {
self.button.setTitle(member.first_name, for: .normal)
}