J'ai une vue dérivée de UIViewControler (pas UITabBarController). Dans cette vue, j'ai ajouté une barre d'onglets avec plusieurs éléments de barre d'onglets. J'ai utilisé UITabBarDelegate pour permettre à la vue de faire quelque chose lorsque les utilisateurs tapent sur chaque élément de la barre d'onglets.
class MyViewController: UIViewController, UITabBarDelegate {
func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem!) {
// do something
}
}
Ma question est de savoir comment sélectionner par programme le premier élément de la barre d'onglets lors du premier chargement de la vue? Notez que je voudrais que le premier élément de l'onglet soit également dans l'état "actif".
Encore une fois, je n'utilise pas UITabBarController
Merci
[tabBar setSelectedItem: [tabBar.items objectAtIndex:0]];
Ce qui, à Swift, serait:
tabBar.selectedItem = tabBar.items![0] as UITabBarItem
Swift 3:
tabBarController.selectedIndex = 0 // (or any other existing index)
Dans Swift si la barre de tabulations est utilisée, pas tabbarcontroller définir la sélection par défaut
var tabbar:UITabBar?//if declare like this
tabbar!.selectedItem = self.tabbar!.items![0] as? UITabBarItem
ou
let tabbar = UITabBar()//if declare and initilize like this
tabbar.selectedItem = self.tabbar.items![0] as? UITabBarItem
si vous dans UITabBarController vous pouvez utiliserself.selectedIndex = // set target index
Dans Xamarin.ios, nous pouvons utiliser comme ceci mainTabBarController.selectedIndex = 3;
Avant de sélectionner l'élément de barre d'onglets actif lors de l'événement viewDidLoad
[self.tabBar setSelectedItem: [self.tabBar.items objectAtIndex: 0]];