J'ai implémenté une version personnalisée d'un formulaire de recherche qui ressemble beaucoup à un UISearchBar avec une barre de portée (mais est en fait assemblé par programmation pour des raisons d'interface utilisateur). L'écran se charge avec un TextField, vous appuyez sur TextField et la barre de navigation s'anime à partir de l'écran, le champ de texte augmente et un contrôle segmenté apparaît pour filtrer les résultats.iOS - NavigationBar montrant sur contrôleur enfant, caché sur le contrôleur parent
Quoi qu'il en soit, tout cela fonctionne, mais quand je tape sur l'un des résultats de la recherche mon code pousse un nouveau ViewController. Le problème est que le nouveau contrôleur est poussé sans une barre de navigation (parce que j'ai utilisé [[self navigationController] setNavigationBarHidden:YES animated:YES]
lors du passage à l'état de recherche).
Je peux afficher la barre de navigation lorsque le nouveau ViewController est poussé, ou même l'animer lorsque la transition vers le nouveau ViewController apparaît - mais toutes ces solutions semblent maladroites. Je veux que cela fonctionne comme si vous utilisiez un UISearchBar (en fait plus comme l'application de messagerie) en ce sens que la barre de navigation restaurée semble glisser de la droite comme si elle faisait partie du contrôleur de vue enfant.
J'espère qu'il y aura une solution simple ... merci
Une façon d'obtenir le comportement que vous voulez est d'imbriquer simplement le nouveau 'UIViewController' dans un compl etely séparer 'UINavigationController' – MikeS
C'est une idée décente et mérite d'être poursuivie si je ne peux pas penser à autre chose. Les problèmes sont que je n'obtiens pas le bouton 'back' dans la barre de navigation du nouveau ViewController pour revenir à la recherche (du moins pas sans un peu de fiddling supplémentaire, que j'espère éviter). –
Peut-être, bien que le «bidouillage supplémentaire» peut être assez minimal (un seul paquebot, essentiellement). – MikeS