Quartz2D - 1
2018-11-07 本文已影响6人
丿小七
oc
oc
使用方法:
- (void)drawRect:(CGRect)rect {
// Drawing code
//1. 获得图形上下文
CGContextRef ctx = UIGraphicsGetCurrentContext();
//2, 拼接图形(路径)
//设置一个起点
CGContextMoveToPoint(ctx, 100, 100);
//添加一条线段到(100, 100)
CGContextAddLineToPoint(ctx, 200, 200);
//设置线宽
CGContextSetLineWidth(ctx, 10);
// 渲染显示到view上
CGContextStrokePath(ctx);
//clockwise: 1逆时针 0 顺时针
CGContextAddArc(ctx, rect.size.width * 0.5, rect.size.height * 0.5, 100, 0, M_PI, 1);
//设置颜色
[[UIColor redColor] set];
// 渲染填充显示到view上
CGContextFillPath(ctx);
}
Swift
swift
使用context
的方法:
override func draw(_ rect: CGRect) {
let cgContext: CGContext = UIGraphicsGetCurrentContext()! //获取当前上下文
cgContext.move(to: CGPoint.init(x: 100, y: 100))
cgContext.addLine(to: CGPoint.init(x: 200, y: 200))
//设置线宽
cgContext.setLineWidth(10)
//空心显示
cgContext.strokePath()
//clockwise:true 逆时针, false顺时针
cgContext.addArc(center: CGPoint.init(x: rect.size.width * 0.5, y: rect.size.height * 0.5), radius: 100, startAngle: 0, endAngle: CGFloat.pi, clockwise: true)
//设置颜色
UIColor.red.set()
//填充显示
cgContext.fillPath()
}
屏幕快照 2018-11-07 16.32.40.png