Réglage de l'onglet par défaut lors de l'utilisation de storyboards
Quelqu'un peut s'il vous plaît dites-moi comment définir l'onglet par défaut lors de l'utilisation de story-boards en iOS. Je n'arrive pas à trouver comment accomplir cela.
Merci
- qu'entendez-vous par défaut de l'onglet? Êtes-vous à l'aide de tabBarController et en essayant de sélectionner le premier onglet lorsque votre application est lancée??
- assurez-vous que votre question est descriptive et d'améliorer votre taux trop..
- J'ai créé des Onglets de l'Application à l'aide des story-boards et je veux le configurer de sorte que le deuxième onglet est sélectionné lorsque l'application est lancée.
- créer une propriété pour votre tabBarController dans votre appdelegate et sélectionnez l'index 1 de votre tabbar élément dans votre applicationDidFinishLaunching: la méthode. ajouter comme cela.[tabBarController.tabBar setSelectedItem:1];
InformationsquelleAutor user1145581 | 2012-10-30
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser l'une de ces deux méthodes:
ou une méthode directe à partir de l'objet
ou vous pouvez les combiner pour ce faire:
mais je n'ai pas testé cette méthode mais, espérons que cette aide!
Directly modifying a tab bar managed by a tab bar controller is not allowed.
. Le sous-classement de la solution de @Aviel Brut est encore à travailler:selectedIndex = defaultIndex
Alors que vous pouvez définir l'initiale de l'onglet sélectionné par programme comme les autres réponses, pour obtenir le même dans votre scénario sans toucher le code, vous effectuez les opérations suivantes:
Cela devrait être à quoi il ressemble quand vous avez atteint les étapes ci-dessus:
_NSSetUsingKeyValueSetter
: pastie.org/10185899Failed to set (selectedIndex) user defined inspected property on (UITabBarController): Could not load NIB in bundle: 'NSBundle </Users/...
Peut sembler excessif pour certains à la sous-classe
UITabBarController
, mais, je pense qu'il fournit la solution la plus propre.BaseTabBarController.swift
Ajouter un
@IBInspectable
et de les mettre enviewDidLoad
:Dans le storyboard, vous
UITabBarController
à votre nouvelle sous-classe:UITabBarController
;Ajouter ceci à la fin de
viewDidLoad
:self.selectedIndex = 1;
Définir ce nouveau fichier comme c'est la Coutume de la Classe dans le
UITabBarController
de votre Storyboard.Vous avez terminé.
Le code suivant fonctionné pour moi:
dans appdelegate trouver
applicationDidBecomeActive
fonction et ajouter ces lignesDans le
viewDidLoad()
de laTabBarController
, ensembleselectedIndex
tout ce que vous voulez. (0
serait le premier,3
serait la quatrième, etc.)Vous pouvez atteindre cet objectif par Xcode 8 ou plus tard (juste testé et je ne sais pas si c'est disponible avant cette version)
Faire les étapes que @Joshua Finch dit, mais:
Ma variante est idéale lorsque vous voulez il suffit de changer la valeur par défaut contrôleur sélectionné, plus de personnalisation. Il suffit d'ajouter le suivre catégorie:
p.s: je préfère @joshua-finch réponse
Bâtiment sur Aviel Brut de réponse, je voulais juste mettre en œuvre ce pour un UITabBar, par opposition à un UITabBarController. Cela peut être fait comme suit:
Condition que vous vous dirigez vers votre UITabBarController, par exemple, d'un écran de connexion, il peut être moins de douleur pour définir la sélection là:
Dans InterfaceBuilder, débranchez tous les enchaîne, puis rebranchez-le dans l'ordre que vous souhaitez qu'ils apparaissent.