2017-04-08 3 views
-2

Dites que j'ai 2 contrôleurs de vue contrôlés par un contrôleur de barre d'onglets. Si le premier contrôleur de vue est en train d'exécuter du code et que l'utilisateur passe au contrôleur de seconde vue via le contrôleur de la barre d'onglets, qu'advient-il du code en cours d'exécution? Est-ce que ça arrête? ou continuez en arrière-plan.Qu'arrive-t-il à l'exécution du code lorsqu'un contrôleur de vue change/disparaît dans IOS?

+0

En supposant que vous n'avez pas créé de nouveau thread sur lequel travailler, votre code se terminera toujours avant que le tap soit enregistré. Raison: par défaut, les contrôleurs de vue exécutent du code sur le thread principal. Votre robinet est enregistré sur le fil principal. –

+0

En fait, le code peut fonctionner indéfiniment. J'ai une minuterie dans mon premier contrôleur de vue qui exécute un bloc de code pour prendre l'image et envoyer sur le réseau chaque minute. Je suis curieux de savoir ce qui se passerait s'il envoyait des images sur le réseau et que l'utilisateur change d'onglet etc. – bakalolo

Répondre

0

Rien de spécial ne se produit. Un contrôleur de barre d'onglets conserve tous ses contrôleurs de vue à la fois. Le passage d'un contrôleur de vue à un autre ne menace donc pas la vie du contrôleur de vue qui a disparu.