Код:
CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
на самом деле не рисует линию, поскольку начало строки CGContextMoveToPoint
и конец строки CGContextAddLineToPoint
совпадают.
Aпара точек, меньше кода, тем лучше:
- Устраните оператор switch, указав цель для каждой кнопки.
- Вызовите
UIGraphicsGetCurrentContext()
один раз и сохраните его в переменной, только дляясность.
Пример:
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineCap(context, kCGLineCapRound);
CGContextSetLineWidth(context, 3.0);
CGContextSetRGBStrokeColor(context, 0.0, 1.0, 2.0, 1.0);
CGContextMoveToPoint(context, firstPoint.x, firstPoint.y);
CGContextAddLineToPoint(context, lastPoint.x, lastPoint.y);
CGContextStrokePath(context);