天天看点

UIBezierPath的使用(持续更新)

uibezierpath的使用

UIBezierPath的使用(持续更新)

1. 使用uibezierpath绘制多边形

UIBezierPath的使用(持续更新)

2. 使用uibezierpath绘制圆形

UIBezierPath的使用(持续更新)

3. 使用uibezierpath绘制矩形

UIBezierPath的使用(持续更新)

4. 使用uibezierpath绘制椭圆

UIBezierPath的使用(持续更新)

5. 使用uibezierpath绘制圆角矩形

UIBezierPath的使用(持续更新)

6. 使用uibezierpath绘制带部分圆角的矩形

UIBezierPath的使用(持续更新)

7. 使用uibezierpath绘制不规则曲线1

UIBezierPath的使用(持续更新)
UIBezierPath的使用(持续更新)

8. 使用uibezierpath绘制不规则曲线2

UIBezierPath的使用(持续更新)
UIBezierPath的使用(持续更新)

9. 使用path与cashapelayer配合制作mask遮罩效果(path闭环里面的填充区域就是作为遮罩使用的)

UIBezierPath的使用(持续更新)

10. 使用core graphics函数去修改path

    uibezierpath类只是cgpathref数据类型和path绘图属性的一个封装。虽然通常我 们可以用uibezierpath类的方法去添加直线段和曲线段,uibezierpath类还提供了一个属性cgpath,我们可以用来直接修改底层的 path data type。如果我们希望用core graphics 框架函数去创建path,则我们要用到此属性。

    有两种方法可以用来修改和uibezierpath对象相关的path。可以完全的使用core graphics函数去修改path,也可以使用core graphics函数和uibezierpath函数混合去修改。第一种方法在某些方面相对来说比较容易。我们可以创建一个cgpathref数据类型, 并调用我们需要修改path信息的函数。

下面的代码就是赋值一个新的cgpathref给uibezierpath对象。

UIBezierPath的使用(持续更新)

如 果我们使用core graphics函数和uibezierpath函数混合方法,我们必须小心的移动path 信息在两者之间。因为uibezierpath类拥有自己底层的cgpathref data type,我们不能简单的检索该类型并直接的修改它。相反,我们应该生成一个副本,然后修改此副本,然后赋值此副本给cgpath属性,如下代码:

mixing core graphics and <code>uibezierpath</code> calls

UIBezierPath的使用(持续更新)

继续阅读