Afficher un bouton après la fin d'un traitement

Bonsoir à tous,
J'ai ce code pour parser des données :

        var urlRequest = URLRequest(url: url!)
        urlRequest.cachePolicy = URLRequest.CachePolicy.reloadIgnoringLocalCacheData

        let config = URLSessionConfiguration.default
        let session = URLSession(configuration: config)


        let task = session.dataTask(with: urlRequest) { (data, response, error) in

            guard let data = data, error == nil else {
                print(error ?? "Unknown error")
                return
            }

            let parser = XMLParser(data: data)
            parser.delegate = self
            parser.parse()
        }
        task.resume()

ensuite je souhaiterais afficher un bouton dès la fin du code précédent, en gros j'ai ceci :

    backgroundQueue.async(execute: {

              // parse des données

              DispatchQueue.main.async(execute: { () -> Void in
                               self.detailButton.setHidden(false)
              })
    })

Sauf que le bouton s'affiche alors que le traitement n'est pas terminé.
Comment feriez-vous ?

Merci.

Réponses

Connectez-vous ou Inscrivez-vous pour répondre.