L'ajout d'un UITabBarController par programmation avec un UINavigationBarController comme le premier onglet À une manette de Navigation
J'ai actuellement un UINavigationController dans mon délégué d'application où je pousse un ViewController sur connexion. Si la connexion est réussie je veux, puis de créer un UITabBarController avec une manette de Navigation comme le premier Onglet, dont la racine contrôleur est un UIViewController que je suis en train de créer.
La RootViewController de mon premier UINavigationController est effectivement agissant en tant que délégué à la logincontroller donc, si un utilisateur se connecte correctement, il appelle une méthode dans mon RootViewController qui est l'endroit où je voudrais pousser un UITabBarController sur la pile. Voici mon code:
UITabBarController *tbController = [[UITabBarController alloc] init];
FileBrowserViewController *fileController = [[FileBrowserViewController alloc] init];
fileController.pathToFileDB = pathToDBUnzipped;
fileController.parentId = @"0";
UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:fileController];
NSMutableArray *aViewControllersArray = [[NSMutableArray alloc] initWithCapacity:2];
[aViewControllersArray addObject:navController];
[navController release];
[tbController setViewControllers:aViewControllersArray];
[self.navigationController pushViewController:tbController animated:YES];
[tbController release];
Maintenant, c'est tous fonctionne bien. À l'exception de 2 choses. Voici la capture d'écran:
1) je ne vois pas uitabbar éléments. Comment puis-je régler l'image et le texte pour chaque onglet?
2) je ne veux pas que noire en haut de la barre. Je veux seulement 1 bar ontop avec le bouton annuler. Comment faire pour supprimer la barre?
Vous devez vous connecter pour publier un commentaire.
pour masquer la barre noire au-dessus de l'utilisation -
pour définir l'onglet de la barre de l'utilisation de l'objet -
pour le système de point -
pour élément personnalisé -
J'ai toujours suivi cette approche lorsque j'ai à la fois un UINavigationController et un UITabbarController:
Vous devez commencer avec une vue en fonction de l'application. Et puis créer un UITabbarController dans votre appDelegate fichier.
Vous pouvez en conséquence gérer dans l'onglet qui vous voulez placer manette de navigation ou seulement une-vue-contrôleur.
Puis dans chaque de la vue des contrôleurs mentionnés ci-dessus vous avez besoin pour mettre en œuvre
dans laquelle vous pouvez définir le nom de l'Onglet et de l'image.
J'ai toujours suivi cette approche et il ne manque jamais. Les onglets sont toujours visibles. Vous pouvez apporter des modifications en fonction de votre code.
Voici une bonne vidéo sur la façon de combiner la Barre d'onglets, Barre de Navigation, et/ou des Vues de Table.
http://www.youtube.com/watch?v=LBnPfAtswgw
Si vous ne voulez pas vous inscrire écran pour avoir un Onglet de la Barre de contrôleur, vous devrez le présenter comme un modal (vue depuis la barre d'onglets est la racine de votre vue-contrôleur). Cela peut être fait par le biais de la presentModalViewController:animation: la méthode. Vous pouvez trouver des informations à ce sujet à:
http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.html%23//apple_ref/doc/uid/TP40007457-CH111-SW1
J'espère que ça aide. Laissez-moi savoir si vous avez d'autres questions!
Acclamations, Evan.
salut l'ami que la barre du haut est la barre de statut . Vous pouvez définir.la barre d'état hidden = oui;
ou de le modifier à partir d'plist , lorsque vous ouvrez votre fichier plist il y a une option pour le cacher,