Tengo algunos problemas al utilizar CGContext con una aplicación de iPhone. Estoy tratando de dibujar varias líneas con diferentes colores, pero todas las líneas siempre terminan teniendo el color que se utilizó por última vez. Probé varios enfoques, pero no he tenido suerte.iPhone CGContext: dibujo dos líneas con dos colores diferentes
Configuré un pequeño proyecto de muestra para tratar ese problema. Este es mi código, lo uso en el método drawRect. Estoy tratando de sacar una roja y una línea azul:
- (void)drawRect:(CGRect)rect{
NSLog(@"drawrect!");
CGContextRef bluecontext = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(bluecontext, 2.0);
CGContextSetStrokeColorWithColor(bluecontext, [UIColor blueColor].CGColor);
CGContextMoveToPoint(bluecontext, 1, 1);
CGContextAddLineToPoint(bluecontext, 100, 100);
CGContextSetStrokeColorWithColor(bluecontext, [UIColor redColor].CGColor);
CGContextAddLineToPoint(bluecontext, 200, 100);
CGContextStrokePath(bluecontext);
}
gracias por su ayuda
Gracias, por lo que este funciona básicamente al hecho, de que tengo que hacer un camino con un color, antes de que yo dibujar un camino con otro color? Crear dos contextos, uno para las líneas azules y otro para las rojas no funciona, porque están usando el mismo contexto al final? – phonecoddy
Sí, por cada cambio de color debe dibujar la ruta y borrarla. Puedes hacerlo todo en el mismo contexto. – drawnonward