J'ai des problèmes à arrêter un indicateur d'activité d'une fonction dans mon délégué de l'application, je sais que la fonction est appelée, mais je ne reçois aucune erreur dans mon journal.stopAnimation indicateur d'activité du délégué de l'application
Je crée le activityIndicator dans mon signInViewController comme si
@IBAction func googleSignInButton(_ sender: Any) {
GIDSignIn.sharedInstance().uiDelegate = self
GIDSignIn.sharedInstance().signIn()
activityIndicator.center = self.view.center
activityIndicator.hidesWhenStopped = true
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.white
view.addSubview(activityIndicator)
activityIndicator.startAnimating()
UIApplication.shared.beginIgnoringInteractionEvents()
}
après dans mon délégué app j'ai cette fonction,
func sign(_ signIn: GIDSignIn!, didSignInFor user: GIDGoogleUser!, withError error: Error?) {
print("this function is running")
SignInViewController().stopanimating()
// ...
if error != nil {
// ...
return
}
Je sais cette fonction fonctionne bien comme il imprime la texte dans l'ect de journal. et appelle cette fonction de la SignInViewController
func stopanimating() {
print("stop animating function running")
DispatchQueue.main.async {
self.activityIndicator.stopAnimating()
UIApplication.shared.endIgnoringInteractionEvents()
}
}
je sais maintenant cette fonction est en cours d'exécution car elle imprime également le texte prévu dans le journal et aussi les endIgnoringInteractionEvents ne fonctionne pas mais l'indicateur d'activité est toujours en cours d'exécution
im tout à fait nouveau à rapide mais j'avais eu des problèmes à manipuler des objets dans les viewcontrollers de mon appdelegate avant, est-ce possible?
Merci à l'avance
assurez-vous d'abord que l'ordre d'exécution est à jour. si vous avez essayé de désactiver l'animation du délégué de votre délégué d'application de manière asynchrone. il pourrait être appelé avant l'animation de départ. Deuxièmement, je peux me tromper, mais on dirait que vous utilisez la classe et non une instance de votre contrôleur de vue lorsque vous essayez de désactiver l'animation. est-ce exprès? – nevgauker