2009-06-29 6 views
7

Je recherche des didacticiels sur la création de transitions de vue personnalisées.Démarrage de la création de transitions de vue personnalisées

En particulier, les transitions qui impliquent des éléments autres que les UIViews sont affectées, telles que la lecture d'une animation sur la transition en cours ou la modification d'une capture d'écran de l'UIView en cours de transition. Je ne veux pas dire implémenter l'ensemble de base des transitions (diapositives, fondus, etc.) pour lesquelles il y a plein d'exemples sur le site d'Apple. Je parle d'ajouter de la vidéo/son/animation supplémentaire tout en enveloppant tout dans une transition réutilisable. Je connais vaguement certains des outils sous-jacents (core-animation et quartz) mais je cherche un tutoriel sans expérience préalable sur le sujet.

Répondre

6

Je viens de mettre en place une classe de transition pour implémenter votre propre animation dans OpenGL ES.

Ne hésitez pas à lire à ce sujet here

0

Voici un petit guide d'utilisation des transitions UIView standard. http://chris-software.com/index.php/dev-center/view-transitions/

Si vous voulez fondre dans une vue, utilisez quelque chose comme ça. Cela fonctionne avec tout type d'élément avec une propriété alpha, telle que UIImageViews, etc. someView.alpha = 0; [viewController.view addSubview: someView];

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:.5]; 
[UIView setAnimationDelegate:self];  
someView.alpha = 1; 
[UIView commitAnimations]; 
+4

Ce n'est pas vraiment ce que je veux dire par « coutume ». C'est assez basique. Je cherche quelque chose où la vue est repliée dans un avion en papier et fait des bruits de zoom quand elle survole l'écran, ou une main arrive et la froisse et la jette dans une poubelle. Animation, son, vidéo superposée ... – Sam

4

Les animations CoreAnimation fonctionnent en enregistrant les différences dans un sous-ensemble très spécifique de propriétés UIView. Ils ne répondent à aucune propriété définie par l'utilisateur et ne font tout simplement pas plus de transitions avancées que celles que vous avez déjà vues dans les démos. Vous pouvez prendre une capture d'écran de votre vue actuelle, l'enregistrer en mémoire sous forme de texture, masquer l'ancienne vue et afficher simultanément une vue OpenGL. Puis, en utilisant la texture de capture d'écran et diverses animations de maillage, vous pouvez rendre votre transition personnalisée (y compris le mélange alpha autour des bords froissés/pliés), puis disposer de la vue OpenGL pour révéler complètement la vue cible. On dirait un projet amusant, et vous seriez en compagnie rare pour l'accomplir.

+0

Cela a beaucoup de sens. Merci. Malheureusement, je n'aurai probablement pas l'occasion de mettre en œuvre ceci - je faisais juste de la recherche pour voir comment répondre aux exigences d'un contrat qui a fait long feu. Espérons que cela sera utile pour quelqu'un dans le futur, cependant. – Sam

Questions connexes