UIBezierPath(二)

2018-11-22  本文已影响54人  Nbm

下载进度

-(void)drawRect:(CGRect)rect
{
    //这个方法只会走一次,不能h手动调用此方法,只有系统能l开启图形上下文
    CGPoint center = CGPointMake(rect.size.width/2, rect.size.height/2);
    
    UIBezierPath * path = [UIBezierPath bezierPathWithArcCenter:center radius:rect.size.width/2 -5 startAngle:-M_PI_2 endAngle:-M_PI_2 + self.progressValue *M_PI*2 clockwise:YES];
    
    path.lineWidth = 2;
    
    [[UIColor redColor] setStroke];
    
    [path stroke];
    
    
    
}
进度条

饼状图

-(void)drawRect:(CGRect)rect
{
    NSArray * array = [self randomArray];

    CGFloat radius = rect.size.width/2;
    CGPoint center = CGPointMake(radius, radius);
    CGFloat start =0;
    CGFloat end =0;
    CGFloat angle =0;
    
    for (int i=0; i<array.count; i++) {
        
         start = end;
         angle = [array[i] doubleValue]/100.0 * M_PI *2;
         end = start + angle;
        UIBezierPath * path = [UIBezierPath bezierPathWithArcCenter:center radius:radius-6 startAngle:start endAngle:end clockwise:YES];
        [path addLineToPoint:center];
        [[self randomColor] set];
        [path fill];
        
        
        
    }
    
}
饼状图
上一篇下一篇

猜你喜欢

热点阅读