2009-08-31 8 views
0

J'ai une application IPhone que je veux essayer de se connecter et faire une configuration initiale avant de montrer l'interface utilisateur. J'ai actuellement mon default.png mis à une image et j'ai une vue qui a cette même image. Lorsque mon application charge les charges Default.png et que l'écran de chargement est chargé. L'écran de chargement est l'affichage de mon contrôleur de vue racine dans MainWindow.xib. Après le chargement de mon application va montrer un contrôleur de barre d'onglets qui est créé par programmation dans le contrôleur de la vue racine. Je veux être capable d'animer entre la vue de chargement (qui est définie dans MainWindow.xib) et mon contrôleur de barre d'onglets (défini dans le contrôleur de vue racine). Je suis juste faireIPhone - Animer de l'écran de chargement à la vue principale de l'application

self.view = tabBarController.view; 

pour changer de vue. J'ai remarqué que cela ne fonctionne pas avec les animations UIView. Ma question est de savoir comment changer de point de vue. J'ai essayé addSubView et insertViewAtIndex et tous deux font l'animation, mais laissez l'écart de barre d'état 20px en haut de l'écran (sous la barre d'état déjà existante). Je suppose qu'il y a quelque chose de simple, mais je ne suis pas sûr de ce que c'est.

Répondre

1

Vous ne devriez pas faire self.view = tabController.view ... quel type d'animation voulez-vous? Avez-vous envisagé d'utiliser un NavigationViewController? Pousser vers le point d'amure du NavigationController vous permettra d'animer les transitions (en poussant la nouvelle vue). Les autres options que vous avez sans utiliser un contrôleur de vue de navigation utilisent la méthode presentModalView: animated dans UIViewController, vous pouvez également définir vos animations lorsque vous utilisez addSubview, le projet exemple de métronome dans le site apple montre comment s'y prendre lorsque vous cliquez sur le bouton info Voici un lien https://developer.apple.com/iphone/library/samplecode/Metronome/. J'espère que cela aide

+0

Est-ce que je ne devrais pas faire self.view = tabController.view pour l'animation - ou jamais? J'ai eu des questions sur le travail avec mon opinion hiérarchique dans le passé. Je fais ceci parce que je veux fondamentalement que mon contrôleur de vue de racine soit un contrôleur de barre d'onglets. J'ai eu des problèmes avec l'addSubView - comme la barre d'état 20px en haut de la vue. – Brian

+0

Je n'avais pas pensé à utiliser un contrôleur de navigation pour simplement gérer plusieurs vues lorsque je ne m'intéresse pas à quelque chose. Est-ce une pratique courante? – Brian

+0

Je ne bloque pas sa bonne pratique pour faire self.view = une autre vue du tout ... l'écart de barre d'état 20px peut être dû à vos vues ayant des rects (certains de 460 et certains de 480) qui peuvent confondre le système d'interface utilisateur . Oui, il est très courant d'utiliser un contrôleur de navigation pour voir plusieurs vues, vous pouvez le voir partout – Daniel

0

Je prendrais simplement le UIImageView que vous utilisez pour l'image Default.png et le placerais comme la sous-vue la plus haute de votre vue principale d'UI. En d'autres termes, affichez votre interface utilisateur principale tout de suite, mais avec l'image de chargement en face d'elle. Ensuite, vous pouvez animer l'image de chargement comme bon vous semble, en changeant sa propriété alpha à 0, par exemple, ou en la rétrécissant via sa transformation.

Questions connexes