Je remarque que certaines des choses que je fais avec les images dans mon application, je pourrais faire avec les propriétés CALayer à la place (c'est-à-dire les bordures, les ombres, les dégradés, etc.). Donc, je me demande, en général, est-ce une meilleure idée d'utiliser CALayers et autres, ou tout simplement faire tout ça dans photoshop et utiliser UIImage (View) s pour tout ce dont j'ai besoin? Les performances de défilement ont été plutôt lentes avec les ombres portées et autres, donc j'essaie de trouver la moindre optimisation possible. Informations générales: Je suis simplement en train de faire défiler verticalement un tas d'images. Un peu comme l'application photos. C'est à partir de la version 3.2, j'ai donc accès à des choses comme les propriétés shadow et shouldRasterize dans CALayer.Performances de CALayer par rapport aux performances UIImageView
Répondre
Une chose importante à savoir à propos des ombres CALayer est qu'elles sont, par défaut, rendues à partir du canal alpha composite du calque; cela peut être très lent, en particulier lorsque le calque est en rotation ou change de taille. Vous devriez regarder dans la propriété shadowPath
: si vous donnez à Core Animation une forme simple, comme un rectangle (UIBezierPath
+bezierPathWithRect:
avec la couche bounds
vous donnera [via sa propriété CGPath
] un CGPathRef
que vous pouvez utiliser ici, vous verrez beaucoup meilleure performance.
shouldRasterize
est également certainement utile, en particulier avec les vues qui ont de nombreuses sous-vues qui ne changent pas souvent; assurez-vous, cependant, que vous réglez rasterizationScale
sur la couche [UIScreen mainScreen].scale
, ou que vous obtiendrez une pixellisation désagréable sur des écrans haute résolution comme l'iPhone 4.
- 1. Problème de performances médiocre sur le serveur par rapport aux performances locales d'une application?
- 2. Indexer les performances nulles par rapport aux données fictives
- 3. Problème de performances de CALayer multiple
- 4. Performances WCF net.tcp par rapport à namedpipes
- 5. UITableView Les performances de défilement avec CALayer + masque
- 6. Implications relatives aux performances de diffusion C#
- 7. Performances du type de référence de tri par rapport aux types de valeur
- 8. Performances de sérialisation Boost: texte par rapport au format binaire
- 9. Performances des flux de chaînes par rapport aux flux d'E/S de fichiers en C++
- 10. Performances de repaint/reflow du navigateur: utilisation des dégradés CSS3 par rapport aux dégradés PNG
- 11. Comment fonctionne l'optimisation des performances de la matrice crénelée C# 3.0 par rapport aux baies rectangulaires?
- 12. Performances des comparaisons de chaînes supplémentaires par rapport aux recherches HashMap
- 13. Performances PHP entravées par require()
- 14. Services Web Exchange (API gérée) par rapport aux performances WebDav Question
- 15. iOS: Performances des animations UIView par rapport aux animations CABasic/CAKeyframe
- 16. SQL Server Reporting Services: références Web par rapport aux références d'assemblage, performances médiocres
- 17. Performances LINQ
- 18. Variables par rapport aux constantes par rapport aux tableaux associatifs en PHP
- 19. UIImageView et UIImage: Comment puis-je optimiser les performances?
- 20. Solr performances de pagination
- 21. Problème de performances Tomcat
- 22. Diverses performances
- 23. performances Concat
- 24. Performances d'IcedTea 6 par rapport à HotSpot 6 de Sun 6
- 25. Limitation de la longueur des caractères dans Sql Cell, différence significative par rapport à la mémoire et aux performances?
- 26. Problèmes de performances GXT
- 27. Problèmes de performances d'extensions
- 28. Performances pyInotify
- 29. HttpContext.Current.Cache performances
- 30. Performances NLog