UITabBarController: passer à une autre vue-contrôleur par programmation
Dans mon application iPhone, pour restaurer le déjà vu onglet, sur le lancement, je mis la setSelectedIndex: (aussi essayé setSelectedViewController: selon les docs mais en vain)
Cela fonctionne sur l'iPhone OS 3.0 - toutefois sur l'OS 2.x l'indice choisi est supérieur à 3 (les 4 premiers onglets) ne pas passer à la vue requise. Ceci est documenté par Apple ici: http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UITabBarController_Class/Reference/Reference.html#//apple_ref/occ/instp/UITabBarController/selectedViewController
Im me demandais si c'est possible de passer à une vue contrôleur sous l'iPhone OS 2.x ? Toute aide est appréciée.
Btw sur mon simulateur de réglage de l'indice de plus de 3 renvoie une erreur (pour iPhone OS 2.x) - j'ai donc enroulé dans un @try{..} @catch(id ..){ } bloc - espérons que cette technique aide à quelqu'un.
OriginalL'auteur Ionic Walrus | 2009-07-08
Vous devez vous connecter pour publier un commentaire.
Peut-être que cela aidera. Ce que j'ai fait enregistrer l'index de la barre d'onglet de l'élément sélectionné. Lorsque l'application est lancée-je vérifier pour voir si le nombre est plus grand que 3, si elle est, je la barre d'onglet en-vue-contrôleur le plus manette de navigation, puis appuyez simplement sur le sauvé index de barre d'onglet en-vue-contrôleur de la manette de navigation.
Hmm. Il fonctionne bien avec un problème: sur le bouton Modifier en Plus de l'écran a disparu.
OriginalL'auteur
J'ai ce travail sur la version 2.
Mon code se trouve ici et travaille charmant.
OriginalL'auteur John Ballinger
La UITabBarController docs concernant selectedIndex sort:
Si je comprends bien, vous avez besoin de "changer la valeur de la selectedViewController propriété" à la place, mais vous n'aurez qu'à aller aussi loin que la sélection de la Plus nav contrôleur, pas un VC. De la même docs concernant selectedViewController:
Comme pour une solution de contournement, je me demande si le Plus valeur liquidative du contrôleur de
pushViewController:animated:
méthode serait utile ici? Donner à chaque affichage d'un numéro d'étiquette unique (que vous pouvez associer avec un VC en coulisses). Enregistrer l'étiquette selon la VC a été pour la dernière fois.Au démarrage-temps, sélectionnez la vue dans la barre d'onglet contrôleur. Si le point de vue de la balise n'est pas associé avec le VCs pour les quatre premiers onglet éléments, il doit être à l'intérieur de la Plus nav contrôleur. Localiser les VC, appuyez sur la Plus valeur liquidative du contrôleur de la pile, puis sélectionnez le Plus nav contrôleur d'emblée.
Je n'ai pas essayé cela, mais il pourrait être intéressant de une expérience! La seule chose à corriger (et il pourrait être un biggie), c'est que vous aurez à pousser la VC après la Plus nav contrôleur d'installation, pas avant.
OriginalL'auteur Joe D'Andrea