J'ai une classe qui est une sous-classe de UIView
. Je suis capable de dessiner des choses à l'intérieur de la vue, soit par la mise en œuvre de l' drawRect
méthode, ou par la mise en œuvre de drawLayer:inContext:
qui est un délégué de la méthode de CALayer
.
J'ai deux questions:
- Comment décider de l'approche à utiliser? Est-il un cas d'utilisation pour chacun?
-
Si j'implémente
drawLayer:inContext:
, il est appelé (etdrawRect
n'est pas, au moins autant que de mettre un point d'arrêt peut dire), même si je n'ai pas affecter mon point de vue de l'CALayer
délégué à l'aide de:[[self layer] setDelegate:self];
comment se fait-le délégué méthode est appelée si mon exemple n'est pas défini à la couche du délégué? et quel est le mécanisme qui empêche
drawRect
d'être appelé sidrawLayer:inContext:
est appelé?