L'ajout de l'écran de connexion en face de Cocoa Touch Barre d'Onglet Application pour IOS
Toujours obtenir ma tête autour de choses ici. Je ne suis même pas proche, mais, de toute façon.... J'ai un TabBar application créée à partir de Xcode. Il fonctionne j'ai trois onglet points de vue, que je sais manipuler, etc.
J'aimerais mettre un 'login' plume fichier en face de toute cette affaire, l'intervention d'un utilisateur pour répondre à un (codé en dur pour l'instant) nom d'utilisateur et mot de passe. Si vous obtenez ce droit, ensuite, le rendu de l'onglet de la partie, ce qui leur permet de cliquer sur autour de.
J'ai une application que j'ai écrit que le nom d'utilisateur et le mot de passe de la partie, je vais avoir du mal à prendre de la logique à partir de là, et de le mettre en face de la TabApplication pièce.
Quelqu'un a des suggestions?
OriginalL'auteur John Batdorf | 2010-12-10
Vous devez vous connecter pour publier un commentaire.
Dans votre AppDelegate, à la fin de la
application didFinishLaunchingWithOptions
méthode, vous verrez ceci:Simplement initialiser votre login-vue-contrôleur et de l'ajouter après le tabcontroller, comme ceci:
À vous de connexion viewcontroller, après l'authentification de l'utilisateur, vous pouvez le masquer comme ceci:
qui vous permet de l'afficher de nouveau si vous avez une déconnexion fonctionnalité.
Alors, quand il charge, l'onglet vue est chargé, et je ne vois que le fond de celui-ci, le LoginView est toujours 'en haut'. Ce que je fais mal?
Exemple de ce que je vois. dl.dropbox.com/u/10462461/... vous pouvez voir la barre d'onglet en vertu de l'INTERFACE utilisateur vue d'en bas.
C'est ce qui a fini par travailler pour moi: [self.vue removeFromSuperview];
Content que vous l'avez résolu, même si je ne suis pas certain pourquoi, ma suggestion n'a pas fonctionné, j'ai un couple de projets qui utilisent la même méthode. Encore, une bonne nouvelle.
OriginalL'auteur Matthew Frederick
La norme est la suivante:
UIViewController
sous-classe qui gère.Présenter ce point de vue modal dans l'app délégué dans
application:didFinishLaunchingWithOptions:
en appelantDe cette façon, l'animation entre la transition etc. est géré automatiquement.
Plus tard, vous pourrez le faire disparaître après vous connecte avec succès dans. Il peut être fait à partir de l'intérieur de la
LoginController
parCependant, j'ai souvent besoin d'une configuration supplémentaire une fois que l'enregistrement est terminé. Alors, je voudrais tout d'abord dire le délégué d'application que la connexion est effectuée, et ensuite effectuer
à partir de l'app délégué. Ensuite, je peux effectuer des tâches supplémentaires.
Pour communiquer avec le délégué d'application, je voudrais utiliser
NSNotification
, mais qui pourraient être un peu difficile pour vous.D'une manière qui pourrait être plus facile à comprendre (mais plus laid à mon goût) est de définir une méthode, dire
loginDone
dans l'app délégué.Puis, à l'intérieur de la
LoginViewController
, vous pouvez le faireNe
[self.tabController dismissModalViewControllerAnimated:YES]
à partir de l'app délégué, après que la connexion est terminée. Vous pouvez faire[self.parentViewController dissmissModalViewControllerAnimcated:YES]
de l'intérieur de la méthode deLoginViewController
, mais dans tous les cas, vous devez informer le délégué d'application que vous avez effectué la connexion avec succès. Je préfère l'écarter de l'application délégué.Désolé, en essayant de comprendre votre explication. Donc, à mon LoginViewController, une fois qu'ils passent d'authentification, comment puis-je passer que l'événement à l'délégué d'application? Je vous remercie.
Voir la modifier je vais faire dans la réponse.
Merci d'essayer, pas sûr de ce que je suis bien ici.... ugh.
OriginalL'auteur Yuji
Si vous êtes en commençant par la valeur par défaut de la barre d'onglets de l'application, vous pouvez le faire comme ceci:
[window addSubview:tabBarController.view];
avec[window addSubview:/*whatever you called the view with the password stuff in it*/];
[passView removeFromSuperview];
[window addSubview:tabBarController.view];
Et vous devriez être dans l'onglet standard de la barre d'application.
OriginalL'auteur Jumhyn
Je préfère faire ce qui suit:
En Application du Délégué
didFinishLaunchingWithOptions
:Puis après une authentification de rappel, vous pouvez avoir quelque chose comme ceci dans votre Délégué d'Application:
OriginalL'auteur Tony