iOS 画板--UIBezierPath和CAShapeLayer实现
最近在做的项目中,用到画板的功能,现在项目告一段落,将在项目中使用的方式记录下,方便以后查看。
1.新建类,继承与UIView
2.实现文件
3.初始化方法
4.响应用户的触摸事件,保存触摸点及画轨迹
到这里已经将画板的功能实现。现在来分析下具体的实现原理:
1.初始化view的时候添加CAShapeLayer对象,用于呈现绘制的路径;
2.用UIBezierPath对象记录用户的触摸点,将每个点连接起来,用于生成路径;
3.将2步骤中的路径赋值給1中初始化的CAShapeLayer对象,将2中的路径显示出来;
使用该种方式时相对于重写UIView的drawRect方法实现绘制方式会节省很大的内存空间。具体的原因情看以下链接:http://blog.csdn.net/jijiji000111/article/details/50480405。