iOS开发 - 画线(直线、矩形、三角形)

原创
2017/01/18 10:22
阅读数 146
// 直线
- (void)drawRect:(CGRect)rect
{
    //获得处理的上下文
    CGContextRef context = UIGraphicsGetCurrentContext();
    
    //指定直线样式
    CGContextSetLineCap(context, kCGLineCapSquare);
    
    //直线宽度
    CGContextSetLineWidth(context, 2.0);
    
    //设置颜色
    CGContextSetRGBStrokeColor(context, 0.314, 0.486, 0.859, 1.0);
    
    //开始绘制
    CGContextBeginPath(context);
    
    //画笔移动到点(31,170)
    CGContextMoveToPoint(context, 31, 70);
    
    //下一点
    CGContextAddLineToPoint(context, 129, 148);
    
    //下一点
    CGContextAddLineToPoint(context, 159, 148);
    
    //绘制完成
    CGContextStrokePath(context);
}

// 矩形
- (void)drawRect:(CGRect)rect
{
    //创建路径并获取句柄
    CGMutablePathRef path = CGPathCreateMutable();
    
    //指定矩形
    CGRect rectangle = CGRectMake(10.0f, 10.0f,200.0f, 300.0f);
    
    //将矩形添加到路径中
    CGPathAddRect(path, NULL, rectangle);
    
    //获取上下文
    CGContextRef currentContext = UIGraphicsGetCurrentContext();
    
    //将路径添加到上下文
    CGContextAddPath(currentContext, path);
    
    //设置矩形填充色
    [[UIColor colorWithRed:0.20f green:0.60f blue:0.80f alpha:1.0f] setFill];
    
    //矩形边框颜色
    [[UIColor brownColor] setStroke];
    
    //边框宽度
    CGContextSetLineWidth(currentContext,5.0f);
    
    //绘制
    CGContextDrawPath(currentContext, kCGPathFillStroke);
    
    CGPathRelease(path);
}

// 三角形
- (void)drawRect:(CGRect)rect
{
    //设置背景颜色
    [[UIColor clearColor]set];
    
    UIRectFill([self bounds]);
    
    //拿到当前视图准备好的画板
    
    CGContextRef context = UIGraphicsGetCurrentContext();
    
    //利用path进行绘制三角形
    CGContextBeginPath(context);//标记
    
    CGContextMoveToPoint(context, 0, 0);//设置起点
    
    CGContextAddLineToPoint(context, 165, 0);
    
    CGContextAddLineToPoint(context, 165, 105);
    
    CGContextClosePath(context);//路径结束标志,不写默认封闭
    
    [[UIColor whiteColor] setFill]; //设置填充色
    
    [[UIColor whiteColor] setStroke]; //设置边框颜色
    
    CGContextDrawPath(context, kCGPathFillStroke);//绘制路径path
}

 

展开阅读全文
iOS
打赏
0
0 收藏
分享
加载中
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部