iOS 8 UINavigationController désactiver le Bouton de Retour
dans ma manette de Navigation j'ai besoin de désactiver temporairement le bouton retour. Je sais qu'il peut être caché à l'aide du suivant, ou quelque chose de similaire:
[self.navigationController.navigationItem setHidesBackButton:YES animated:YES];
Mais ce n'est pas ce dont j'ai besoin, au lieu de cela je veux que le bouton back pour être grisé et non-sensibles à l'utilisateur d'événements tactiles. C'est leur manière d'atteindre cet objectif sans remplacer la valeur par défaut du bouton retour?
Merci d'avance!
OriginalL'auteur David Silverfarmer | 2014-11-06
Vous devez vous connecter pour publier un commentaire.
Pour désactiver le bouton de retour, ces commandes serait de pouvoir faire ce que vous voulez faire:
Permettre:
Désactivé:
Mise à jour:
Comme d'iOS 7, il y a aussi un balayage que vous aurez envie de désactiver le
UINavigationBar
.Il y a aussi un balayage de "cogner". J'ai mis à jour la façon de le désactiver.
Cela désactive tous les boutons, et pas seulement le bouton de retour.
OriginalL'auteur Adrian
Ce cache le bouton de retour, sot, il devient inaccessible à l'utilisateur. Mais pas le désactive:
des informations très utiles!
Plus simple que @adrian
Ce doit être la accepté de répondre à
OriginalL'auteur Evgeny Karpov
Je sais que c'est assez vieux, mais j'ai eu ce problème aussi.
Dans mon cas, dans un scénario que j'ai dû désactiver le bouton de retour et dans un autre, j'ai dû désactiver tous les boutons de navigation. ma solution a été de la désactivation de la barre de navigation au total dans les deux scénarios:
Ce ne sera pas afficher les boutons comme un handicapé, mais permettra d'éviter touche.
Espère que cela aidera
+1 Mon cas d'utilisation a été de désactiver le bouton de retour, tout en montrant un progres bar et dans l'attente d'une réponse du réseau si cette réponse était parfait.
OriginalL'auteur Sahar Lepa
Je crois que les points suivants devraient vous aider:
Mise à JOUR
Désolé les gars, ma conviction n'est pas venu vrai.
Il semble que la propriété
backBarButtonItem
est conçu uniquement pour le réglage personnalisé de titre ou l'image pour le Bouton de Retour.À partir de la documentation:
Malheureusement, je n'ai pas trouver un moyen de la désactivation de la touche retour à l'économie de son pays natal apparence et le comportement, parce que tout le temps quand j'essaie de définir les
UIBarButtonItem
ennavigationItem.backBarButtonItem
bien - il est mis à jour avec les autochtones compétents en arrière bouton de style et il a toujoursenabled == YES
.Je pense que c'est fait par Apple pour une raison, parce que nous ne devrions pas forcer l'utilisateur à rester sur un écran de détail et de désactiver lui de revenir.
Aussi, dans iOS7 et, plus tard, l'utilisateur peut toujours utiliser balayez-de-gauche-pointe geste (si vous n'avez pas le désactiver) pour revenir en arrière.
La seule chose affreuse que je peux recommander, c'est de créer un personnalisé
UIBarButtonItem
et le mettre enleftBarButtonItem
avec "Retour", le titre, la cible et le sélecteur qui pop de votre viewController. Par défaut, il sera remplacer natif bouton de retour.Ensuite, vous pouvez le désactiver comme d'habitude en utilisant
navigationItem.leftBarButtonItem.enabled = NO
.Malheureusement, il ne sera pas regarder et d'agir (en cas de titre de la mise à jour en fonction de l'espace disponible) en tant que natif de bouton de retour 🙁
Je suis d'accord que ce code ne fonctionne pas pour moi non plus
Ne fonctionne pas pour moi non plus.
Désolé les gars, j'ai mis à jour la réponse.
OriginalL'auteur Nevs12