UIpickerView
Salut
encore une question de debutant !
J'ai un UIpickerView dans mon app, et je l'affiche /cache avec hidden, mais c est pas tres beau.
Comment le faire apparaitre en deroulé par le bas par exemple.
J'ai bien tenté de rajouter un UIview, mais j'y suis pas arrivé
Merci!!
encore une question de debutant !
J'ai un UIpickerView dans mon app, et je l'affiche /cache avec hidden, mais c est pas tres beau.
Comment le faire apparaitre en deroulé par le bas par exemple.
J'ai bien tenté de rajouter un UIview, mais j'y suis pas arrivé
Merci!!
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Voilà .
Code inspiré des exemples trouvés dans la doc de CoreAnimation.
Généralités sur les animations
les actions (d'où j'ai tiré les noms des clés magiques associés à l'insertion/suppression des vues et la base de code)
Bon, pas testé, mais l'idée est là ...
1- ajoute une subview, avec mon uipickerview
2- ajouter ce code la ou il faut pour l affichage :
3- pour que ca disparaisse, j ai juste changé ca :
C'est correcte ou pas?
En fait pour ajouter des animations, tu as 2 moyens sur iPhone :
- La solution que tu as utilisée, avec [UIView beginAnimations:... context:...] et [UIView commitAnimation] pour prendre en sandwich les propriétés à animer... ce qui permet en peu de lignes et sans se prendre le chou d'ajouter des animations sympa en 2 temps 3 mouvements... Mais le choix des animations peut vite s'avérer limité, même si dans 80% des cas il peut suffire.
- L'autre solution est de créer toi même une CAAnimation (en fait une CABasicAnimation, CAKeyframedAnimation ou encore une CATransition, toutes 3 sous-classes de CAAnimation) puis de "l'installer" (soit avec la méthode "addAnimation: forKey" de CALayer pour la faire démarrer tout de suite, soit en la définissant en tant qu'action à déclencher sur un événement genre insertion de la vue dans sa superview, etc.)
Les 2 sont valables, la 2e solution étant un peu moins directe (là où la première s'utilise facilement sans se prendre le chou) mais plus complète et flexible. Par exemple justement en utilisant la méthode [UIView beginAnimation:.. context:..] tu ne peux pas utiliser la transition de type "MoveIn" qui ferait apparaà®tre ta vue depuis le bas de l'écran, d'où l'utilisation d'une CATransition dans mon exemple. Mais pour d'autres effets plus simples, la méthode 1 suffit amplement.
----
Sinon la petite note au passage, pour une raison obscure, Apple n'a pas daigné implémenter les animations CurlUp et CurlDown sur le simulateur (alors qu'elles fonctionnent très bien sur un vrai iPhone). Ce qui veut dire que ces effets de CurlUp et CurlDown ne sont pas visibles dans le simulateur (ça vaut le coup d'utiliser un autre effet pour les tests sur simulateur pour tester que tes animations fonctionnent bien, car sinon si ça ne marche pas tu ne sauras pas si ça vient de la non disponibilité de l'animation CurlDown sur le simulateur ou d'une erreur de code de ta part...
CATransition* anim = [CATransition animation];
CATransition undeclared....