quartz 2d在普通的ios开发中用处大吗

 我来答
心胸宽大的j4
2016-07-14 · TA获得超过172个赞
知道小有建树答主
回答量:278
采纳率:50%
帮助的人:261万
展开全部
//
// YYlineview.m
// 03-画直线
//
// Created by apple on 14-6-9.
// Copyright (c) 2014年 itcase. All rights reserved.
//

#import "YYlineview.h"

@implementation YYlineview

// 当自定义view第一次显示出来的时候就会调用drawRect方法
- (void)drawRect:(CGRect)rect
{

// 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);
}

@end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
育知同创教育
2016-07-14 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
用处大:
代码:
- (void)drawRect:(CGRect)rect
{
CGContextRef line = UIGraphicsGetCurrentContext(); // 不需要* ,获得图形上下文

CGContextMoveToPoint(line, 50, 50); // 设置线段起点

CGContextAddLineToPoint(line, 250, 50); // 设置线段重点

CGContextSetRGBStrokeColor(line, 0, 1.0, 0, 1.0); // 设置险段的颜色

CGContextSetLineWidth(line, 10); // 设置线断的宽度

CGContextSetLineJoin(line, kCGLineJoinRound); // 设置线断起点和终点的样式都为圆角

CGContextSetLineCap(line, kCGLineCapRound); // 设置险段的转角样式为圆角

CGContextStrokePath(line); // 渲染,绘制出一条空心的线断

CGContextRef lineOne = UIGraphicsGetCurrentContext(); // 设置第二条线

CGContextMoveToPoint(lineOne, 50, 150); // 设置线段起点

CGContextAddLineToPoint(lineOne, 200, 20); // 设置线段终点

CGContextSetRGBStrokeColor(lineOne, 1.0, 0, 0, 1.0); // 设置线断颜色

CGContextSetLineWidth(lineOne, 10); // 设置线段宽度

CGContextStrokePath(lineOne); // 渲染,绘制出一条空心的线断
}
@end

文/Sunnyzx(简书作者)
原文链接:http://www.jianshu.com/p/d5183ee5371d
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式