UIView alpha contre UIColor alpha

Je voudrais savoir la différence entre:

  • Affectation de mon UIView une couleur avec <1 alpha vs
  • Attribution d'un non-transparente de couleur mais en donnant la UIView a <1 la valeur alpha.

Sur la capture d'écran j'en ai fait deux UIViews avec deux noir (alpha = 1.0) UILabels sur le dessus de chaque:

UIView alpha contre UIColor alpha

Assumer une macro _RGB est défini avant:

#define _RGB(r,g,b,a) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a]

et puis voici le code::

[_view1 setBackgroundColor:_RGB(255, 0, 0, 1)];
[_view1 setAlpha:0.5];

[_view2 setBackgroundColor:_RGB(255, 0, 0, 0.5)];
[_view2 setAlpha:1];

[_view3 setBackgroundColor:_RGB(255, 0, 0, 1)];
[_view3 setAlpha:1];

Je ne peux voir qu'une différence visuellement: un Changement de vue propre de l'alpha au lieu de bg de la couleur, affecte les sous-vues. Mais d'autres que c'est là toute la différence dans les fonctionnalités que je dois prendre en compte? (eg. Sur les animations, les couches, etc.)

source d'informationauteur Yunus Nedim Mehel