Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
收到响应后,Alamofire、SwiftyJSON更新UI_Swift_Alamofire_Swifty Json - Fatal编程技术网

收到响应后,Alamofire、SwiftyJSON更新UI

收到响应后,Alamofire、SwiftyJSON更新UI,swift,alamofire,swifty-json,Swift,Alamofire,Swifty Json,您好,我正在编写代码,使用Alamofire与服务器api对话,然后使用swiftyJSON解析JSON响应。在得到所有结果后,我想相应地更新到UI,但似乎不能 这是我的Alamofire请求,它具有快速JSON解析(在Pokemon.class中) 我的下载在康斯坦斯特·斯威夫特完成 typealias DownloadComplete = () -> () 注意:我可以打印所有值(有效),因此响应正常 但问题是,当我在ViewController中调用函数时。用户界面没有更新 下面是

您好,我正在编写代码,使用Alamofire与服务器api对话,然后使用swiftyJSON解析JSON响应。在得到所有结果后,我想相应地更新到UI,但似乎不能

这是我的Alamofire请求,它具有快速JSON解析(在Pokemon.class中)

我的下载在康斯坦斯特·斯威夫特完成

typealias DownloadComplete = () -> ()
注意:我可以打印所有值(有效),因此响应正常

但问题是,当我在ViewController中调用函数时。用户界面没有更新

下面是如何在viewController中调用该函数

pokemon.downloadPokemonDetails1 {
            print(self.pokemon.type)
            self.updateUI()
        }
updateUI()函数:


从服务器接收数据后是否仍要更新UI?任何帮助都是非常感谢的。谢谢

您是否使用
主线程
执行
updateUI()
方法?您好,如何检查主线程是否执行updateUI()?我在viewDidLoad()函数下输入,您只需将该方法封装在
dispatch\u async(dispatch\u get\u main\u queue()){}
中,即可显式运行该方法。有关更多信息,请参阅。顺便说一下,更新UI总是需要
主线程
。Hi事件封闭UI也不会更新。我的电话有点问题。我尝试在viewController上打印,但什么也没发生。只能在fuc(pokemon.class)内部打印hi just Figueout。我需要在alamofire请求结束时调用completed()来执行
main thread
是否使用
updateUI()
方法?您好,如何检查main thread execture updateUI()是否正确?我在viewDidLoad()函数下输入,您只需将该方法封装在
dispatch\u async(dispatch\u get\u main\u queue()){}
中,即可显式运行该方法。有关更多信息,请参阅。顺便说一下,更新UI总是需要
主线程
。Hi事件封闭UI也不会更新。我的电话有点问题。我尝试在viewController上打印,但什么也没发生。只能在fuc(pokemon.class)内部打印hi just Figueout。我需要在alamofire请求结束时调用completed()以
pokemon.downloadPokemonDetails1 {
            print(self.pokemon.type)
            self.updateUI()
        }
 func updateUI() {
        nameLbl.text = pokemon.name
        typeLbl.text = pokemon.type
        heightLbl.text = pokemon.height
  }