创建PiaView 继承UIView,所在的UIView中的中进行绘制
- (void)drawRect:(CGRect)rect {
NSArray *arr = @[@25,@25,@50];
CGPoint center = CGPointMake(rect.size.width*0.5, rect.size.height *0.5);
CGFloat radius = rect.size.width*0.5 - 10;
CGFloat startA = 0;
CGFloat angle = 0;
CGFloat endA = 0;
for (NSNumber *num in arr) {
startA = endA;
angle = num.intValue / 100.0 * M_PI * 2;
endA = startA +angle;
UIBezierPath *path = [UIBezierPath bezierPathWithArcCenter:center radius:radius startAngle:startA endAngle:endA clockwise:YES];
[[self randomColor]set];
// [[UIColor redColor]set];
[path setLineWidth:5];
[path addLineToPoint:center];
[path fill];
}
}
//生成一个随机颜色
-(UIColor *)randomColor
{
CGFloat r = arc4random_uniform(256)/255.0;
CGFloat g = arc4random_uniform(256)/255.0;
CGFloat b = arc4random_uniform(256)/255.0;
[UIColor colorWithRed:r/255 green:g/255 blue:b/255 alpha:1];
return [UIColor colorWithRed:r green:g blue:b alpha:1];
}
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
// 重绘
[self setNeedsDisplay];
}
@end