Swift - Comment faire pour faire disparaître tous de vue des contrôleurs pour revenir à la racine
Je veux une de mes applications peuvent aller à un premier point de vue contrôleur quand chaque fois que les utilisateurs veulent.
Je veux donc créer une fonction pour effacer toutes les contrôleurs de vue, peu importe si elle est poussée dans les contrôleurs de la navigation ou présentés sous forme modale ou ouvert quelque chose de méthodes.
J'ai essayé de plusieurs façons, mais je n'ai pas réussi à faire disparaître toutes les contrôleurs de vue certainement.
Est-il un moyen facile?
vous pouvez utiliser navigationcontroler.poptorootcontroller
Vous pouvez changer la vue de la racine de contrôleur.
Réinitialiser rootviewcontroller de la fenêtre de l'application permettra de résoudre la question.
Êtes-vous à l'aide enchaîne? Si oui, un déroulement segue est la façon la plus simple
Merci à tous. J'ai mis vos opinions et les résoudre.
Vous pouvez changer la vue de la racine de contrôleur.
Réinitialiser rootviewcontroller de la fenêtre de l'application permettra de résoudre la question.
Êtes-vous à l'aide enchaîne? Si oui, un déroulement segue est la façon la plus simple
Merci à tous. J'ai mis vos opinions et les résoudre.
OriginalL'auteur Byoth | 2017-11-16
Vous devez vous connecter pour publier un commentaire.
Essayez Ceci :
il devrait rejeter tous les contrôleurs de vue au-dessus de la racine-vue-contrôleur.
Si ce n'est pas le travail que vous pouvez le faire manuellement en exécutant une boucle while comme ça.
Il serait de rejeter tous les viewControllers jusqu'à ce qu'il a un presentingController.
Edit : si vous voulez rejeter/pop poussé ViewControllers vous pouvez utiliser
Espère que cela aide.
popToRootViewController
et je l'ai résolu 🙂Modifié la réponse.
Que faire si je veux à présent view controller..jusqu'à un nombre spécifique..à partir d'une boucle for..dire si count est de 5 ..5 fois le même point de vue, contrôleur devrait être présenté..est-il possible ?
vous souhaitez présenter un viewController après avoir mis 5 fois ou que vous souhaitez présenter une vue unique contrôleur de 5 fois?
Non, je tiens à vous présenter une vue unique contrôleur de 5 fois..j'ai fait le codage, mais seul ce dernier on obtient présenté..u peut me fournir un aperçu de comment le faire ?
OriginalL'auteur Agent Smith
Salut Si Vous l'Utilisez de Navigation, vous pouvez utiliser d'abord un
ou, si vous utilisez la présentation de modèle, vous pourrez deuxième
Pour La Navigation
Pour la Présenter comme un modèle
Erhan Demirci Mon Svp chers
OriginalL'auteur Sandip Gill
Demandez simplement à votre
rootViewController
de rejeter touteViewController
si la présentation.popToRootViewController
et je l'ai résolu 🙂Édité réponse pour vous. Il va d'abord faire disparaître toutes les viewController et puis pop tous viewController si la racine est UINavigationController.
Cela fonctionne pour moi, quand je n'ai pas
self
de référence actuellement à la présentation de la fenêtreOriginalL'auteur Syed Qamar Abbas
bonjour à tous, voici la réponse pour Swift-4
pour remonter à la racine de la vue-contrôleur, vous pouvez simplement appeler une ligne de code et votre travail sera fait.
et si vous avez l'écran de démarrage et après que l'écran de connexion et que vous voulez aller à l'écran de connexion, vous pouvez tout simplement ajouter presentedviewcontroller dans le code ci-dessus
OriginalL'auteur ayush pathak
OriginalL'auteur Softlabsindia
Pop tous les contrôleurs de vue sur la pile à l'exception de la racine-vue-contrôleur et les mises à jour de l'affichage.
Mais si vous voulez aller de contrôleur spécifique juste utiliser le dessous de la fonction.
Pop contrôleurs de vue jusqu'à ce que l'affichage spécifié contrôleur est en haut de la pile de navigation.
OriginalL'auteur Shauket Sheikh
Pour obtenir ce que vous désirez, modifier votre pile de navigation, puis faire popViewController.
Voir cette pour le moyen de continuer à manipuler la pile de navigation. Si votre supérieur VC est modale, de les rejeter d'abord avant de le code ci-dessus.
OriginalL'auteur beshio
Vous pouvez utiliser ce bout de code pour définir votre viewcontrolller à rootViewController.
vous pouvez appeler cette méthode lorsque vous cliquez sur le bouton fermer. Cet ensemble de votre Contrôleur pour rootviewcontroller et de rejeter tous les autres ViewController
Vous souhaitez re-créer de nouveaux viewController lors d'un clic sur le bouton fermer? Ce qui si l'utilisateur ne souhaitez pas créer de nouvelles VC mais voulons revenir à la même instance que par décrites dans la question ci-dessus.
auto.navigationController?.popToRootViewController(animation: true) utilisez cette sinppet
Ce qui si l'utilisateur n'utilise pas toutes les navigationController. Veuillez lire la question et la réponse.
OriginalL'auteur Umesh Verma