自定义饼图思路
2018-07-12 本文已影响0人
落叶随风花落入泥
自己随笔,加深记忆的。
1 准备好的数据源, 数据源中可以包含(① 占比或者是所占的角度②扇形的颜色) 这是需要提供的。
2 在自定义view中的构造函数中,初始化笔,设置画笔属性(比如说颜色,设置抗锯齿)
3 定义方法,把数据源传递到自定义view中,在此方法中进行 对数据进行处理,把所有数据的总值求出来,如果我们在自定义的view中已经用一个集合定义了颜色,在这里只需要给数据源中扇形颜色属性设置值即可,如果没有定义,可以在获取数据源的地方进行设置。
4 处理完数据源后,调用invalidate();这个方发是系统自带的,起就是调用onDraw()方法,进行图形的绘制。
5 注意点:画饼上的字的时候,这里要进行转换,通过公式 Math.toRadians(double angdeg) 转换为度大致相等的角度,以弧度为单位的角度。从角度到弧度的转换通常是不精确的。
Math的用法:
https://blog.csdn.net/mango_H/article/details/78107417
真正实现饼图的代码如下:
https://www.jianshu.com/p/db3ab084f43b