Je suppose que ce problème concerne vraiment la performance, mais j'essaie d'obtenir une vérification approximative.iPhone: animation vectorielle
J'affiche une vue de carte (bien que ce soit une vue de carte ou quelque chose d'autre pourrait changer, et j'espère est immatériel), et au-dessus de la vue de carte j'ai une sous-classe de vue transparente. Dans la méthode drawRect:
de cette vue, je dessine sur la vue en utilisant des appels graphiques principaux; Les cercles, les dégradés, etc. Ce que je dessine n'est pas super compliqué, mais ce n'est pas trivial. Ensuite, j'ai un NSTimer
qui se déclenche toutes les X secondes, en appelant [myview setNeedsDisplay]
à chaque fois, et ce qu'il dessine change à chaque pas de temps (les cercles grossissent, les couleurs et les dégradés changent, etc.).
Est-ce la bonne façon de faire ce type d'animation vectorielle? Je reçois très faible performance X semble être effectivement pas mieux que d'environ 0,25. Je voudrais 0,05 ou plus petit. Y a-t-il un autre moyen de faire les choses? J'ai le sentiment que je suis stratégiquement loin, ou c'est futile. Je peux faire des choses avec CoreAnimation - par exemple développer et réduire les images et autres, et c'est très rapide (pourquoi?), Mais cela ne me donne pas le contrôle que je veux ...
PLUS D'INFO: réduire la complexité du dessin (moins de cercles, de gradients, etc.) accélère significativement le dessin, mais je dois presque rien dessiner pour obtenir une animation fluide. Cette stratégie NSTimer est-elle la bonne solution? Existe-t-il un autre moyen d'animer le dessin vectoriel?
Il serait utile pour les gens qui essaient de lire votre question si vous formatez le code correctement (en ce cas, en l'entourant en arrière). Voir http://daringfireball.net/projects/markdown/syntax. –
duplication possible de [dessin animé Optimiser graphique Core (iPhone)] (http://stackoverflow.com/questions/3310883/optimize-core-graphics-animated-drawing-iphone) –
oh, ce lien est vraiment utile. Merci! – Colin