Set « opacité » d'un CGLayer avant tirage au sort?
Question
J'ai la sous-classe UIView - en fait un morceau de casse-tête -. Avec 2 différents CGLayer initialisé à initWithFrame
Dans drawRect je dois mélanger cette deux couches , et le plus haut devrait avoir alpha variable en fonction de jeu logique.
Quel est le meilleur (plus des performances optimisées) façon de le faire? Y at-il CGLayer, ou la fonction CGContext qui définit une alpha avant de tirer?
La solution
Régler la -opacity
de la couche. Rappelez-vous que le réglage de -opaque
de la couche doit être NO. La valeur par défaut est NON, mais il est généralement réglé sur OUI pour des raisons de performance.
Si vous faites déjà -drawInContext:
, alors vous pouvez expérimenter avec CGContextSetAlpha()
. En général, cependant, vous n'utilisez pas -drawRect:
et les couches en même temps. Vous laissez généralement soit la vue ou les couches font le dessin.