Ciao a tutti, in questo articolo voglio presentarvi una semplice libreria che uso ogni tanto nei miei progetti. Praticamente è un container controller, come UITabBarController, UINavigationController ma che ha la barra del menu a sinistra e che si può nascondere. Le tab invece sono 3 tipi: quello che rimane statico in alto, i tab che iniziano da sopra e i tab che iniziano da sotto. Per scaricare questa libreria andate su https://github.com/AldoOS/AITabBarController.
L’implementazione e semplice, dopo aver creato tutte le viewcontroller che volete andate su app delegate e create un instanza di Storyboard:
[code lang=”obj-c”]
UIStoryboard *mainStoryboard = UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
[/code]
Poi iniziate un viewcontroller:
[code lang=”obj-c”]
SecondViewController *second = [mainStoryboard instantiateViewControllerWithIdentifier:@"second"];
[/code]
Create un variabile d’stanza di AITabBarController che può essere di due tipi: statico e che si nasconde.
[code lang=”obj-c”]
AITabBarController *tbViewc;
if (DEVICE_INTERFACE_iPAD) {
tbViewc = [[ AITabBarController <span class="s4">alloc ] initWithTabBarStyle: AITabBarStyleFixed];
tbViewc.tabBarWidth = <span class="s5">44 ;
}
if ( DEVICE_INTERFACE_iPHONE) {
tbViewc = [[AITabBarController alloc] initWithTabBarStyle: AITabBarStyleSlidingLeft];
tbViewc.tabBarWidth = 44 ;
}
[/code]
Poi inserite i viewcontroller che avete creato nel AITabBarController:
[code lang=”obj-c”]
tbViewc.primaryControllers = @[navFirst, second] ;
tbViewc.secondaryControllers = @[bottom1] ;
tbViewc.selectedViewController = navFirst;
self.window.rootViewController = tbViewc;
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
[/code]
Poi andate nel viewcontroller che avete creato e per modificare il tab aggiungendo imagine e titolo chiamate questo metodo:
[code lang=”obj-c”]
-(AITab *)tab{
AITab *tb = [[AITab alloc] init];
tb.titleTab = @"TAB Nav" ;
tb.tabIcon = [UIImage imageNamed:@"man"];
return tb;
}
[/code]
Per far apparire il TabBar chiamate questo metodo:
[code lang=”obj-c”]
[self.aiTabBarController showAfter:0.0 andHide: YES after: 2 ];
[/code]
Per nasconderlo chiamate questo metodo:
[code lang=”obj-c”]
[self.aiTabBarControllerhideAfter: 0.0];
[/code]