// 画矩形和圆形(椭圆也是圆哦) CGContextRef contextRef = UIGraphicsGetCurrentContext(); CGContextSetRGBStrokeColor(contextRef, 1.0f, 1.0f, 1.0f, 1); CGContextSetLineWidth(contextRef, 2.0f); CGContextAddRect(contextRef, CGRectMake(50.0f, 50.0f, 200.0f, 100.0f)); CGContextAddEllipseInRect(contextRef, CGRectMake(50.0f, 50.0f, 200.0f, 100.0f)); CGContextStrokePath(contextRef); // 画圆弧 // CGContextAddArc(contextRef, <#CGFloat x#>, <#CGFloat y#>, <#CGFloat radius#>, <#CGFloat startAngle#>, <#CGFloat endAngle#>, <#int clockwise#>) // 圆心, 半径, 起始角度, 结束角度, 1,顺时针 0,逆时针 CGContextAddArc(contextRef, 100.0f, 300.0f, 50.0f, 0.0f * ( M_PI/180 ), 90.0f * ( M_PI/180 ), 1); CGContextStrokePath(contextRef);
rect.size.height = rect.size.width;
CGFloat endPosition = 140*M_PI/180;
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(context, 0.0 , rect.size.height);
CGContextRotateCTM(context, -M_PI_2);
CGContextBeginPath(context);
CGContextSetRGBFillColor(context, 1,1,1,1);
CGContextAddEllipseInRect(context, rect);
CGContextClosePath(context);
CGContextDrawPath(context, kCGPathFill);
CGContextSaveGState(context);
CGContextSetRGBFillColor(context, 0,0,0,1);
CGContextMoveToPoint(context, rect.size.height / 2 ,rect.size.height / 2);
CGContextAddArc(context, rect.size.height / 2 ,rect.size.height / 2, rect.size.height / 2,0,endPosition, 1);
CGContextDrawPath(context, kCGPathFill);
CGContextRestoreGState(context);