No iOS, depois que criamos uma camada do contexto e obtemos o contexto da camada, como esses contextos se relacionam?
Podemos criar uma camada a partir do contexto gráfico atual e, em seguida, obter o contexto da camada:
CGContextRef context = UIGraphicsGetCurrentContext();
CGLayerRef layer = CGLayerCreateWithContext(context,
CGSizeMake(self.frame.size.width,
self.frame.size.height), NULL);
CGContextRef contextOfLayer = CGLayerGetContext(layer);
Então agora temos 2 contextos:context
econtextOfLayer
. Como esses dois contextos se relacionam entre si? ÉcontextOfLayer
na verdade parte decontext
econtext
tem uma matriz de ponteiros de contexto de camada? Se eu imprimir seus endereços usandoNSLog(@"%p", ...)
, eles têm endereços diferentes, então eles não são o mesmo objeto. E eu pensocontextOfLayer
não afeta a pilha de contexto, então é apenas um contexto independente que apenas "existe lá fora" por si só?