- (void)drawRect:(CGRect)rect { // 获取上下文 CGContextRef ctx = UIGraphicsGetCurrentContext(); // 保存一份最纯洁的图形上下文 // 调用一次该方法就会拷贝一个上下文到栈中 CGContextSaveGState(ctx); //CGContextSaveGState(ctx); // 第一条线 // 利用图形上下文保存绘图信息 CGContextMoveToPoint(ctx, 150, 20); CGContextAddLineToPoint(ctx, 20, 100); // 设置第一条线的状态 CGContextSetLineWidth(ctx, 10); CGContextSetLineCap(ctx, kCGLineCapRound); [[UIColor redColor] set]; // 渲染 CGContextStrokePath(ctx); // 还原开始保存的那份最纯洁的图形上下文 CGContextRestoreGState(ctx); // 第二条线 CGContextMoveToPoint(ctx, 80, 30); CGContextAddLineToPoint(ctx, 80, 150); /* // 清空状态 CGContextSetLineWidth(ctx, 5); CGContextSetLineCap(ctx, kCGLineCapButt); [[UIColor greenColor] set]; */ // 还原开始保存的那份最纯洁的图形上下文 CGContextRestoreGState(ctx); /* // 第3条线 CGContextMoveToPoint(ctx, 200, 30); CGContextAddLineToPoint(ctx, 80, 150); */ // 渲染 CGContextStrokePath(ctx); }
时间: 2024-11-05 06:31:22