IOS 画图 画线

创建UIView子类


  Add -> New File.UIView ,起名为2DView,然后到ViewController.xib中修改view的类名称为刚才创建的2DView.

 

覆写drawRect方法


1. 画线

复制代码
1) CGContextRef context = UIGraphicsGetCurrentContext();//获得当前view的图形上下文(context)
 
2) CGContextSetLineWidth(context, 2.0);//制定了线的宽度


3) CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
   CGFloat components[] = {
  0.0, 0.0, 1.0, 1.0};//颜色元素
   CGColorRef color=CGColorCreate(colorspace,components);//这两行创建颜色
   CGContextSetStrokeColorWithColor(context, color);//使用刚才创建好的颜色为上下文设置颜色
ps:创建颜色可以用下面代替,效果一样
  CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);
 
4) CGContextMoveToPoint(context, 0, 0);//设置线段的起始点
   CGContextAddLineToPoint(context, 300, 400);//设置线段的终点
复制代码

 

  上述代码指定了线段的宽度、颜色、路径,。接下来就要执行绘制操作,并且释放颜色空间:

1 CGContextStrokePath(context);//绘制
2 CGColorSpaceRelease(colorspace);
3 CGColorRelease(color);

  接下来执行!将会看到屏幕上有根蓝色线段。

 

2. 画path


  你也许注意到了,上述画线的时候,我们的路径是通过两个点来指定的。定义一个包含了很多点路径可以使我们能够绘制一些列的连接的直线段,通过重复调用CGContextAddLineToPoint()函数。曲线也可以被添加到一个形状中,例如CGContextAddArc();

下面代码将创建一个菱形:

复制代码
 1  CGContextRef context = UIGraphicsGetCurrentContext();
 2 
 3  CGContextSetLineWidth(context, 2.0);
 4 
 5  CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);
 6 
 7   CGContextMoveToPoint(context, 100, 100);
 8   CGContextAddLineToPoint(context, 150, 150);
 9   CGContextAddLineToPoint(context, 100, 200);
10   CGContextAddLineToPoint(context, 50, 150);
11   CGContextAddLineToPoint(context, 100, 100);
12 
13   CGContextStrokePath(context);
复制代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值