Animation et styling d'une application
Bonjour,
Cela fait un petit moment que je n'ai pas fais d'application et un nouveau contract vient de tomber.
C'est une application pour iPad plutôt intéressante mais avec des contraintes techniques que je n'ai encore jamais rencontrés.
Dans le passé j'ai réaliser pas mal d'application métiers où l'aspect n'était pas vraiment le point le plus important (tout en restant jolie quand même).
Cette nouvelle application repose sur une dashboard où il y aura une création de ticket, qui pourront être drag and drop dans des box. Il y aura aussi des animations lors de ce drag, vélocité, retour à l'emplacement de départ si relâché et pas mal d'autres petites choses.
Le problème c'est que c'est quelques choses que je n'ai jamais fais et je galère un peu à me documenter sur le sujet.
A part trouver des tutoriels ou ressources sur comment changer la couleur du header ou de la barre d'une TableView je ne trouve rien d'autres!
J'espère donc trouver un peu d'aide ici, ou même une direction dans laquelle orienté mes recherches.
J'ai besoin de documentation et de ressources sur comment styliser une app en allant au-delà de la modification de couleur etc. Des informations plus poussé sur les animations et sur les bonnes pratiques.
Si vous avez ça sous la main je vous en serai très reconnaissant!
Merci de m'avoir lu!
Réponses
Pour faire un Drag & Drop :
- Utilise UIGestureRecognizers (TapGR pour le tap initial, PanGR pour le déplacement)
- Avec le PanGR tu peux avoir la vélocité de ton déplacement, etc, et donc quand le Pan se termine (l'utilisateur relève le doigt) tu récupères la vélocité du PanGR et tu démarres une animation avec [UIView animateWithDuration:options:animations:]
- Tu donneras comme duration une durée inversement proportionnelle à la vélocité de ton PanGR (plus l'utilisateur allait vite quand il a lâché la vue, plus il faudra que l'animation finale aille vite, donc moins elle devra durer longtemps, et vice-versa)
- Tu pourras indiquer dans options une courbe d'animation de type "EaseOut" (plutôt que linéaire), histoire que la vitesse de l'animation s'adoucisse en arrivant proche de la position cible.
C'est pas bcp plus compliqué que ça au final.
Sinon côté docs, bah CoreAnimation Cook Book, Gesture Recognizer Class Reference, Events Programming Guide, ...
PS : Une fois que tu auras implémenté ça, tu peux imaginer utiliser à terme plutôt snapshotViewAfterScreenUpdates:YES pour créer et animer un snapshot de ta vue plutôt que la vraie vue pendant l'opération de Drag & Drop, ça optimise un peu le bouzin plutôt que de déplacer la vue et ses sous-vues et risquer une interaction avec un bouton qui serait en sous-vue pendant ton drag&drop, etc.
Salut,
Merci de ta réponse rapide!
Je vais me documenter sur ce que tu m'as conseillé!
J'ai trouvé plusieurs tutoriels:
- http://guti.in/articles/creating-tinder-like-animations/
- http://www.raywenderlich.com/49311/advanced-table-view-animations-tutorial-drop-in-cards
J'espère en trouver d'autre de ce style pour pouvoir me faire une base de documentation.
Merci!