间隔时间有点长,这篇文件我会详细讲解一下箭头的绘制,效果就是下图这个情况
箭头的绘制Core Graphics并没有提供现成的方案,想要绘制出满足设计要求的箭头,只能靠我们自己去实现了,话不多说,上干货
大家看到图之后应该就知道箭头是怎么绘制出来的了,似乎也很简单嘛,但是看了之后可能会觉得简单之后略显有些复杂。
是的,我绘制箭头一共使用了八个点,绘制的方法就是在确认2号点(起始点)以及6号点(终点)之后,计算出其余的六个点,然后一次连接。具体点的计算,每个人可以根据自己要绘制的箭头的形状自行发挥,我这边使用的方案是,箭头头部跟尾部大小是固定的,这样可以很容易的获取到(1,3)(4,5,7,8)六个点的坐标。
连接的时候从1号点开始,使用CGPathAddArcToPoint连接1,2号点,并且可以绘制出一条优雅的弧线,接下来想通的方式连接2,3号点,以此类推,使用CGPathAddLineToPoint连接其余的点,箭头就绘制完成了,剩余就是简单的上色工作了。
同样的这边也提一个比较细节的点
当绘制的箭头类似上图,相对较大时,如果箭头的长度较短,则最终展示的效果,会差一些,这个时候,我们可以适当的调小头部以及尾部的大小