UIBezierPath를 사용하여 작성한 원형 진행률 표시 줄에서 작업하고 있습니다. 진행 표시 줄은 다음 그림과 같습니다UIBezierPath로 작성한 호에 둥근 모서리를 적용하십시오.
내 질문은 : 어떻게 둥근 원호의 가장자리를 확인하고 직사각형하지? 처럼
는난 호를 그리는 데 사용되는 코드는 같습니다
// Draw the arc with bezier path
int radius = 100;
arc = [CAShapeLayer layer];
arc.path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(100, 50) radius:radius startAngle:M_PI endAngle:M_PI/150 clockwise:YES].CGPath;
arc.position = CGPointMake(CGRectGetMidX(self.view.frame)-radius,
CGRectGetMidY(self.view.frame)-radius);
arc.fillColor = [UIColor clearColor].CGColor;
arc.strokeColor = [UIColor purpleColor].CGColor;
arc.cornerRadius = 0.5;
arc.lineWidth = 6;
[self.view.layer addSublayer:arc];
// Animation of the progress bar
drawAnimation = [CABasicAnimation animationWithKeyPath:@"strokeEnd"];
drawAnimation.duration = 5.0; // "animate over 10 seconds or so.."
drawAnimation.repeatCount = 1.0; // Animate only once..
drawAnimation.removedOnCompletion = YES; // Remain stroked after the animation..
drawAnimation.fromValue = [NSNumber numberWithFloat:0.0f];
drawAnimation.toValue = [NSNumber numberWithFloat:10.0f];
drawAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
[arc addAnimation:drawAnimation forKey:@"drawCircleAnimation"];
내가 arc.cornerRadius
을 사용하려고하지만 아무것도 돌려주지 않는 것 같았다.
도움을 주시면 감사하겠습니다.
미리 감사드립니다.
화강암 lineCapStyle
kCGLineCapRound
행 (베 지어 경로)
고마워요. 작동 중입니다. – Granit
@Grangji 예에서 여전히 작동하지 않습니다. 내가 뭘 잘못하고 있니? –
UIBezierPath가 아닌 CAShapeLayer에 설정해야합니다. –