telefono simbolos simbolo significado pestañas los iconos flecha este con cargan asocian iphone uitabbar default-selected

significado - simbolos de iphone



¿Cómo configurar el elemento 1 de la barra de pestañas para que se seleccione de forma predeterminada en el iPhone? (10)

Soy nuevo en el desarrollo de iPhone. Estoy creando una aplicación basada en vista. He agregado una barra de pestañas en mi vista (y no un controlador de la barra de pestañas). Al establecer el valor de la etiqueta del elemento de la barra de pestañas en 1, 2, he cargado la vista para cada barra de pestañas en el evento de clic de la barra de pestañas.

Quiero que la barra de pestañas 1 sea seleccionada por defecto. ¿Qué debo hacer para eso?

Aquí está mi código:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item { NSLog(@"didSelectItem: %d", item.tag); [self activateTab:item.tag]; } - (void)activateTab:(int)index { switch (index) { case 1: self.tab1ViewController =[[tab1 alloc] initWithNibName:@"tab1" bundle:nil]; [self.view insertSubview:tab1ViewController.view belowSubview:tabbar1]; if (currentViewController != nil) [currentViewController.view removeFromSuperview]; currentViewController = tab1ViewController; break; case 2: self.tab2ViewController =[[tab2 alloc] initWithNibName:@"tab2" bundle:nil]; [self.view insertSubview:tab2ViewController.view belowSubview:tabbar1]; if (currentViewController != nil) [currentViewController.view removeFromSuperview]; currentViewController = tab2ViewController; break; default: break; } }

Agregué la barra de pestañas en el generador de interfaces. ¿Puedo hacer cualquier cosa en el generador de interfaces?


¿No puede simplemente llamar a su método para seleccionar una pestaña cada vez que muestra la vista? Al igual que:

[self activateTab:1];

Para cambiar el elemento de la barra de pestañas seleccionado, use:

[myTabBar setSelectedItem:myTabBarItem];

Donde myTabBarItem es su instancia de UITabBarItem para la vista relevante.


Cómo lo hice, usando UITabBarDelegate :

#import "InfoSecurity.h" #import "TabsCell.h" @interface InfoSecurity () <UITabBarDelegate> @property (strong, nonatomic) IBOutlet UITabBar *mainTab; @property(weak,nonatomic) NSArray *TabArray; @end @implementation InfoSecurity - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } - (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item { if (_mainTab.selectedItem.tag == 1) { NSLog(@"TAB 1"); } else if (_mainTab.selectedItem.tag == 2) { NSLog(@"TAB2"); } else if (_mainTab.selectedItem.tag == 3) { NSLog(@"TAB3"); } else { NSLog(@"TAB NOT WORKING"); } } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. }


Lo siguiente funciona perfectamente para mí en Swift 1.2

myTabBar.selectedItem = myTabBarItem

donde myTabBar y myTabBarItem son IBOutlets a los elementos respectivos en el guión gráfico.


Para swift 3.0 si tabBar es @IBOutlet usa en viewDidLoad:

tabBar.selectedItem = tabBar.items![0]


Puede establecer el índice predeterminado de TabBarController estableciendo la propiedad selectedIndex. Esto se puede poner en viewDidLoad o antes de presionar el controlador si lo está haciendo de esa manera. Esto se hace solo cuando está utilizando un TabBarController y no solo un TabBar.

tabBarController.selectedIndex = 1;

Si está utilizando un TabBar sin un TabBarController, entonces debe hacerlo de esta manera.

self.tabBar.selectedItem = [self.tabBar.items objectAtIndex:1];


Recuerde establecer que el delegado de la Barra de UIT en el generador de interfaz sea la clase del controlador de vista y también que establezca <UITabBarDelegate> después de la declaración @interface en la clase.

A continuación, puede configurar la primera pestaña para que se resalte así:

- (void)viewDidLoad { [super viewDidLoad]; if (tabBar.items.count >= 1) { [tabBar setSelectedItem:[tabBar.items objectAtIndex:0]]; } }


Swift 3:

@IBOutlet weak var uiTabBarOutlet: UITabBar! uiTabBarOutlet.selectedItem = uiTabBarOutlet.items?[0]


Swift 4:

override func viewDidLoad() { super.viewDidLoad() self.selectTab(at: 1, animated: false) }


Si UITabBar NO ya está manejado por un UITabBarController

[self.TabBar setSelectedItem:[[self.TabBar items] objectAtIndex:1]];

aquí TabBar es el Outlet para la UITabBar.

si UITabBar ya está a cargo de un UITabBarController

[self.tabBarController setSelectedIndex:1];


[tabBar setSelectedItem:[tabBar.items objectAtIndex:item.tag]];