Android自定义控件:类QQ未读消息拖拽效果
QQ的未读消息,算是一个比较好玩的效果,趁着最近时间比较多,参考了网上的一些资料之后,本次实现一个仿照QQ未读消息的拖拽小红点: 首先我们从最基本的原理开始分析,看一张图: 这个图该怎么绘制呢?实际上我们这里是先绘制两个圆,然后将两个圆的切点通过贝塞尔曲线连接起来就达到这个效果了。至于贝塞尔曲线的概念,这里就不多做解释了,百度一下就知道了。 切点怎么算呢,这里我们稍微复习一些初中的数学知识。看了这个图之后,求出四个切点应该是轻而易举了。 现在思路已经很清晰了,按照我们的思路,开撸。 首先是我们计算切点以及各坐标点的工具类 publicclassGeometryUtils{ /** *Asmeaningofmethodname. *获得两点之间的距离 *@paramp0 *@paramp1 *@return */ publicstaticfloatgetDistanceBetween2Points(PointFp0,PointFp1){ floatdistance=(float)Math.sqrt(Math.pow(p0.y-p1.y,2)+Math.pow(p0.x-p1.x,2));...