Quartz 2D 是一个二维绘图引擎,同时支持iOS和Mac系统
用法:
- 新建一个类,继承自 UIView
- 实现 - (void)drawRect:(CGRect)rect 方法,然后在这个方法中
/*
作用:专门用来绘图
什么时候调用:当view现实的时候调用
*/
- (void)drawRect:(CGRect)rect {
// NSLog(@"%s", __func__);
// NSLog(@"%@", NSStringFromCGRect(rect));
// 1.在drawRect方法中系统已经帮你创建了一个跟view相关联的上下文
// 只要获取上下文就行了.
// 1. 获取上下文
CGContextRef ctx = UIGraphicsGetCurrentContext();
// 2.描述路径
UIBezierPath *path = [UIBezierPath bezierPath];
// 画曲线
// 2.1设置起点
[path moveToPoint:CGPointMake(50, 280)];
// 2.2添加一根曲线到某一个点
[path addQuadCurveToPoint:CGPointMake(250, 280) controlPoint:CGPointMake(50, 50)];
// 3.把路径添加到上下文
CGContextAddPath(ctx, path.CGPath);
// 4.把上下文的内容显示到View上
CGContextStrokePath(ctx);
}
或者更简单点
- (void)drawRect:(CGRect)rect {
UIBezierPath *path = [UIBezierPath bezierPath];
[path moveToPoint:CGPointMake(50, 280)];
[path addQuadCurveToPoint:CGPointMake(250, 280) controlPoint:CGPointMake(50, 50)];
[path stroke];
}
注:只有在 - (void)drawRect:(CGRect)rect;方法中才有用
