2010-03-07 4 views

Répondre

2

Vous pouvez le faire de deux manières différentes ... en IB ou en code. Si j'ai affaire à un TabBar, je le fais habituellement dans IB. Tout ce que vous avez à faire est de faire glisser un objet NavigationController où se trouve actuellement votre objet tableview ... alors faites de votre tableviewcontroller le premier enfant de votre nouvel objet de navigation.

TabBarController 
-(Tab Bar) 
-NavigationController 
--(Navigation Item) 
--TableViewController 

ou

Si vous voulez faire dans le code ... Je voudrais juste mettre en place au sein de votre délégué application (généralement parce qu'une barre d'onglets est au plus haut point dans votre application ... ce qui signifie qu'il apparaît tout de suite après le chargement):

// Create a tabbar controller and an array to contain the view controllers 
tabBarController = [[UITabBarController alloc] init]; 
NSMutableArray *localViewControllersArray = [[NSMutableArray alloc] initWithCapacity:numberOfTabs]; 

// setup the view controllers 
UINavigationController *myNavigationController; 
myNavigationController = [[UINavigationController alloc] initWithRootViewController:myTableViewController]; 

// add to tab bar controller 
[localViewControllersArray addObject:myNavigationController]; 
tabBarController.viewControllers = localViewControllersArray; 

// add the tab bar to the window 
[window addSubview:tabBarController.view]; 

vous devez alors libérer les objets que vous venez de créer, car ils seront conservés par le TabBarController et le contrôleur de navigation. J'espère que cela aidera

+0

Eh bien cela avait du sens, et j'ai maintenant quelque chose qui ressemble à ceci - http://sht.tl/hfEE - Mais ça ne marche pas .. ça fonctionne comme avant, ce qui est ok car il n'y a pas erreurs mais il n'y a pas encore de barre en haut :( – tarnfeld

0

Comme Ryan a remarqué que vous pouvez le faire facilement en utilisant IB. Voici comment vous pouvez réaliser ceci:

  1. Lancez Xcode et créez un nouveau projet d'application de barre d'onglets.
  2. Sous le groupe de ressources, recherchez MainWindow.xib et double-cliquez dessus pour l'ouvrir dans Interface Builder.
  3. Ensuite, sélectionnez l'objet Contrôleur de la barre d'onglets et ouvrez la fenêtre Inspecteur (Commande + Maj + I).
  4. Notez la section "View Controllers" dans Inspector (Sample screenshot), puis cliquez sur View Controller popup et modifiez la valeur de View Controller à Navigation Controller.

C'est tout! Vous pouvez maintenant utiliser votre sous-classe UITableViewController à l'intérieur de ce UINavigationController.

Questions connexes