Dans mon iPhone App, pour restaurer l'onglet Visualisé précédemment, sur Lancement I Définissez le SEselectedindex: (également essayé SEstSelectedViewController: selon DOCS mais en vain) P>
Ceci fonctionne sur iPhone OS 3.0 - Toutefois, sur OS 2.x, l'index sélectionné supérieur à 3 (les 4 premiers onglets) ne permet pas de passer à la vue souhaitée. Ceci est documenté par Apple ici: http://developer.apple.com/iphone/library/documentation/uikit/reeference/itabbarcontroller_class/reference/reference.html#//apple_ref/occ/instp/itabbarcontroller/SelectedViewController a > p>
Je vous demande si il est possible de passer à un contrôleur d'affichage sous iPhone OS 2.x? Toute aide est appréciée. P>
BTW sur mon index de réglage de simulateur supérieur à 3 jette une erreur (pour iPhone OS 2.x) - donc j'ai enveloppé cela dans un @. ..} @catch (id ..) {} block - espère que cela Technique aide quelqu'un. P>
3 Réponses :
J'ai ce travail sur la version 2.
Mon code est assis ici et travaille bien. P>
- (void)applicationDidFinishLaunching:(UIApplication *)application { // Add the tab bar controller's current view as a subview of the window [[UIApplication sharedApplication] setIdleTimerDisabled:YES]; [application setStatusBarStyle:UIStatusBarStyleBlackOpaque]; [window addSubview:tabBarController.view]; // Settings getLastViewIndex is just, 0,1,2,3 depending on what it was last set. tabBarController.selectedIndex = [Settings getLastViewIndex];
Oui, la définition de la propriété sélectionnée fonctionne dans iPhone OS 2.x, mais cela ne fonctionne pas si l'index est supérieur à 3. Mon iPhone APP possède plus de 12 onglets.
Les DOCS UITABBARCONTROLLER CONCERNANT Cette propriété représente nominalement un
indice dans le tableau de la
dans les versions de iPhone OS avant
version 3.0, cette propriété reflète
L'index de l'élément de barre d'onglet sélectionné
seulement. em> tenter de définir cette valeur à
un index d'un contrôleur d'affichage qui est
pas visible dans la barre d'onglets, mais est
plutôt géré par la navigation Si je comprends correctement, vous devez "modifier la valeur de la propriété Ce contrôleur de vue est celui dont
La vue personnalisée est actuellement affichée par
l'interface de la barre d'onglets. Le spécifié
Le contrôleur de vue doit être dans le
dans iPhone OS 3.0 et plus tard, vous pouvez
Utilisez cette propriété pour sélectionner n'importe lequel des
Voir les contrôleurs dans le
ViewControlers Strong> Propriété. Cette
Comprend les contrôleurs de vue qui sont
géré par la navigation En ce qui concerne une solution de contournement, je me demande si le Plus strong> nav Au démarrage du temps, sélectionnez la vue appropriée dans le contrôleur de barre d'onglets. Si l'étiquette de la vue n'est pas associé aux VCs pour les quatre premiers éléments de l'onglet, il doit être dans le contrôleur Plus strong> nav. Localisez le VC, pousser sur le Plus strong> nav la pile du contrôleur, puis sélectionnez Plus strong> contrôleur nav pur et simple. P>
Je n'ai pas essayé, mais il pourrait être utile d'une expérience! Gotcha que le potentiel (et il pourrait être un trop grave) est que vous devrez pousser que VC après em> Plus strong> contrôleur nav est configuré, pas avant. P>
ViewControlers Code> Propriété. Cependant, si
Le contrôleur d'affichage sélectionné est
Actuellement, la navigation forte> plus forte>
contrôleur, cette propriété contient le
Valeur
nsnotfound code> em>. Définir ceci
La propriété change la vue sélectionnée
contrôleur à celui de la
Index désigné dans le
ViewControlers Code> Array. Pour sélectionner le
plus fort> contrôleur de navigation elle-même, vous
doit changer la valeur de la
SélectionnéViewController Code> Propriété
à la place. P>
ViewControlers Code> Array. Affectation d'un nouveau
Voir le contrôleur à cette propriété
Modifie la vue actuellement affichée
et sélectionne également un onglet approprié dans
la barre d'onglets. Changer la vue
contrôleur met également à jour le
sélectionnée code> Propriété en conséquence.
La valeur par défaut de cette propriété est
nil code>. p>
du contrôleur pushViewController: animé: code> serait utile ici? Donnez à chaque vue un numéro de étiquette unique (que vous pouvez associer à un VC approprié dans les coulisses). Enregistrer l'étiquette pour VC selon la dernière active. P>
Cette explication a beaucoup aidé. Il vous suffit de définir la sélection de SELECTIDEX ne fonctionne pas si le NON des onglets est supérieur à 5 et si le fichier sélectionné est> 5, mais le réglage de la sélection de fichiers sur la vue ContentryController fonctionne comme un charme.
Peut-être que cela aidera. Ce que j'ai fait était d'enregistrer l'index de l'élément de barre d'onglets sélectionné. Lorsque l'application lance, je vérifie si le numéro est supérieur à 3, si c'est je défini le contrôleur de la barre d'onglets sélectionné pour être le contrôleur de navigation, puis appuyez simplement sur l'onglet d'index sauvegardé de la barre de la barrière de la barre de la barre de navigation.
Cela fonctionne bien. Que se passe-t-il lorsque vous définissez SELECTEDex est que le plus contrôleur est utilisé à la place du contrôleur de navigation d'origine, puis retournez dynamiquement. Ce code obtient le donation initiale de configuration et garantit que le pointeur de navigation de contrôle du contrôleur d'affichage est correct.
Hmm. Cela fonctionne bien avec un problème: le bouton d'édition sur l'écran de plus a disparu.