简单小画板的实现.

先来看看效果:

大概整理了下思路,可能还有不完整. 如下:


1.首先是搭建界面.由于太基础这里就不详细演示.

2.画线,添加起始点和终点.

起始点:

path = [TBLBezierPath bezierPath];

path.lineWidth = self.lineWidth;

path.pathColor = self.lineColor;

[path moveToPoint:point];

终点:

UITouch *touch = touches.anyObject;

CGPoint addPoint = [touch locationInView:self];

[path addLineToPoint:addPoint];

[[self.lines lastObject] addLineToPoint:addPoint];

[self setNeedsDisplay];

渲染:

[line stroke];

2.复杂的问题可以分解成一个一个简单的问题,在我们完成单条线的绘制之后,我们会像如何同时绘制多条线? 在这,我想到的是用一个数组保存每一条线:

- (NSMutableArray *)lines {

if (!_lines) {

_lines = [NSMutableArray array];

}

return _lines;

}

3.第三步就是功能的完善和细节的处理,例如线条的粗细,线条的颜色,清除,回退功能的完成. 

PS:初次进入时,线条的默认颜色,粗细需要设置.否则会有问题.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言:关于贝塞尔曲线与CAShapeLayer的学习 学习Demo演示: 贝塞尔曲线简单了解 使用UIBezier...
    麦穗0615阅读 17,946评论 18 149
  • Quartz2D以及drawRect的重绘机制字数1487 阅读21 评论1 喜欢1一、什么是Quartz2D Q...
    PurpleWind阅读 821评论 0 3
  • 前言 本文实现一个简单的手绘画板的效果,主要是记录下实现原理,虽然很简单,但是这可以是实现复杂效果的基础。毕竟t他...
    進无尽阅读 742评论 1 3
  • 前言 本文只要描述了iOS中的Core Animation(核心动画:隐式动画、显示动画)、贝塞尔曲线、UIVie...
    GitHubPorter阅读 3,672评论 7 11
  • 唐岚岚坐在宁昊身边,不动声色地对他眨了个眼。宁昊会意的点点头,同时长长的吐了一口气,眼光看向坐在对面的赵政父女。 ...
    可可豆子阅读 321评论 0 5