1、画直线app
代码:.net
//
// YYlineview.m
// 03-画直线
//
// Created by apple on 14-6-9.
// Copyright (c) 2014年 itcase. All rights reserved.
//get
#import "YYlineview.h"it
@implementation YYlineviewio
// 当自定义view第一次显示出来的时候就会调用drawRect方法
- (void)drawRect:(CGRect)rect
{ast
// 1.取得和当前视图相关联的图形上下文(由于图形上下文决定绘制的输出目标)/
// 若是是在drawRect方法中调用UIGraphicsGetCurrentContext方法获取出来的就是Layer的上下文
CGContextRef ctx=UIGraphicsGetCurrentContext();//不须要*,同id
// 2.绘图(绘制直线), 保存绘图信息
// 设置起点
CGContextMoveToPoint(ctx, 20, 100);
//设置终点
CGContextAddLineToPoint(ctx, 300, 100);
//设置绘图的状态
//设置线条的颜色为蓝色
CGContextSetRGBStrokeColor(ctx, 0, 1.0, 0, 1.0);
//设置线条的宽度
CGContextSetLineWidth(ctx, 15);
//设置线条起点和终点的样式为圆角
CGContextSetLineCap(ctx, kCGLineCapRound);
//设置线条的转角的样式为圆角
CGContextSetLineJoin(ctx, kCGLineJoinRound);
//3.渲染(绘制出一条空心的线)
CGContextStrokePath(ctx);
// //注意线条不能渲染为实心的
// CGContextFillPath(ctx);
//设置第二条线
//设置第二条线的起点
CGContextMoveToPoint(ctx, 50, 200);
//设置次日线的终点(自动把上一条直线的终点当作起点)
CGContextAddLineToPoint(ctx, 300, 60);
//设置绘图的状态
// CGContextSetRGBStrokeColor(ctx, 1.0, 0.7, 0.3, 1.0);
//第二种设置颜色的方式
[[UIColor grayColor] set];
//设置线条的宽度
CGContextSetLineWidth(ctx, 10);
//设置线条的起点和终点的样式
CGContextSetLineCap(ctx, kCGLineCapButt);
//渲染第二条线的图形到view上
//绘制一条空心的线
CGContextStrokePath(ctx);
}import
@end渲染
效果:方法
2、画三角形im
代码:
//
// YYrectview.m
// 02-画三角形
//
// Created by 孔医己 on 14-6-10.
// Copyright (c) 2014年 itcast. All rights reserved.
//
#import "YYrectview.h"
@implementation YYrectview
- (void)drawRect:(CGRect)rect
{
//1.得到图形上下文
CGContextRef ctx=UIGraphicsGetCurrentContext();
//2.绘制三角形
//设置起点
CGContextMoveToPoint(ctx, 20, 100);
//设置第二个点
CGContextAddLineToPoint(ctx, 40, 300);
//设置第三个点
CGContextAddLineToPoint(ctx, 200, 200);
//设置终点
// CGContextAddLineToPoint(ctx, 20, 100);
//关闭起点和终点
CGContextClosePath(ctx);
// 3.渲染图形到layer上
CGContextStrokePath(ctx);
}
效果:
提示:关闭起点和终点 CGContextClosePath(ctx);