Empêcher l'animation en cliquant sur le bouton "Retour" dans une barre de navigation?
Ma demande a une manette de navigation et je ne veux pas de l'animation :
- pour empêcher une animation lorsque l'on pousse un point de vue, il est facile, par la pushViewController:animation: méthode
- mais quand je clique sur le bouton "retour" sur ce sous-vue, il y a une animation ! KO ! Que puis-je faire pour empêcher cette animation ?
source d'informationauteur Dirty Henry
Vous devez vous connecter pour publier un commentaire.
Plus élégant avec une catégorie. Cela suppose que vous manette de navigation de l'objet est définie dans votre délégué d'application. Il suffit de mettre ceci avant votre @implementaion dans la vue racine contrôleur.
Je suis venu à la recherche d'une solution plus élégante, mais voici comment j'ai fait (avec succès) de le faire jusqu'à présent.
L'idée de base:
Les inconvénients:
Code - quelle que soit la classe prend le relais pour l'animation:
...si vous aussi vous voulez couper-en à la coutume de l'animation, vous avez besoin de la dernière ligne ci-dessus, de sorte que vous pouvez ensuite écouter de la barre de navigation, et de réagir en parallèle, comme ceci:
Cela empêche d'animation par défaut.
Dans le cas où si vous avez besoin d'une animation personnalisée
Pas que vous devriez, cependant, vous pouvez remplacer la norme de comportement par la création d'une coutume
leftBarButtonItem
dans votre viewController.La la documentation dit que vous ne devriez passer
NO
avant la valeur liquidative du contrôleur de point de vue est affiché.Rappelez-vous que les applications qui ne sont pas conformes à l'Interface de l'iPhone lignes Directrices ne seront pas acceptées dans l'app store.
J'ai simplement répondu à une autre question connexe, qui décrit comment facilement créer un bouton de retour qui reproduit le look de la norme iOS (iPhone /iPad) de l'INTERFACE utilisateur arrière bouton de la barre d'élément mais permet à d'autres fonctions à ajouter. Comme il est recommandé dans falconcreek réponsedans le
backButtonPressed
méthode, il suffit d'ajouter: