Я использую ниже код, чтобы нарисовать дугу в метод drawLayer заказного CALayer
класса, но ничего не отображается:UIBezierPaths не показаны в CALayer drawLayer InContext
(void) drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx
{
float r = self.bounds.size.width/2;
CGContextClearRect(ctx, self.bounds); // clear layer
CGContextSetFillColorWithColor(ctx, [UIColor whiteColor].CGColor);
//CGContextFillRect(ctx, layer.bounds);
UIBezierPath *path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(0, 0) radius:r startAngle:-M_PI_2 endAngle:M_PI_2 clockwise:NO];
CGContextAddPath(ctx, path.CGPath);
CGContextStrokePath(ctx);
}
Обратите внимание, что если я раскомментировать CGContextFillRect(ctx, layer.bounds)
line, прямоугольник правильно отображается.
Отсутствует цвет обводки? –