2017-05-04 2 views
0

Ich bin ein Segment eines Kreisdiagramms mit dem folgenden Code Zeichnung:CAShapeLayer zeichnet einen Kreis in der Mitte als Nebeneffekt der Linie Kappe auf kCALineJoinRound

CAShapeLayer *segment = [CAShapeLayer layer]; 
UIBezierPath *segmentPath = [UIBezierPath bezierPath]; 

[segmentPath addArcWithCenter:segmentCenter radius:segmentRadius startAngle:angle1 endAngle:angle2 clockwise:YES]; 

segment.path = [segmentPath CGPath]; 
[segment setLineCap:kCALineJoinRound]; // this is the line which causes this 

segment.lineWidth = 8; 
segment.fillColor = [[UIColor clearColor] CGColor]; 
segment.strokeColor = [[UIColor orangeColor] CGColor]; 

[self.layer addSublayer:segment]; 

und als sideffect von kCALineJoinRound Einstellung ich auch bekommen ein kleiner Kreis im Inneren. Ich muss es loswerden, kannst du mir helfen?

enter image description here

Antwort

0

Gelöst wurde das Problem aufgrund der CAShapeLayer zweimal in layoutSubviews hinzugefügt werden, die mit diesem seltsamen Effekt verursacht.

Verwandte Themen