项目中有折线图和柱形图的需求,然后就用了MPAndroidChart,由于对框架不了解,在demo版本出来后发现无法对柱状图进行圆角的配置,没办法所以就针对MPAndroidChart做了一点小的修改,想到这种东西肯定立不了Canvas和drawRect,看了下源码,定位到

..\MPChartLib\src\main\java\com\github\mikephil\charting\renderer\BarChartRenderer.java

protected void drawDataSet(Canvas c, IBarDataSet dataSet, int index) {


   c.drawRect(buffer.buffer[j], buffer.buffer[j + 1]+100, buffer.buffer[j + 2],
                    buffer.buffer[j + 3], mRenderPaint);

做了矩形的绘制


于是就在这个地方将drawRect去除掉,利用set进来的数据,选择drawRoundRect

中将其画矩形的方法替换为画圆角的

          RectF rectF=new RectF(buffer.buffer[j], buffer.buffer[j + 1], buffer.buffer[j + 2],
                    buffer.buffer[j + 3]);
            c.drawRoundRect(rectF,(float)25,(float)25,mRenderPaint);


这样效果就是圆角的柱状图了,这个可以待以后有时间,将这部分东西拿出来封装一下,在app中设置一下即可


                  MPAndroidChart 圆角柱状图


效果如上,小柱状图就是圆角的了

项目地址:https://github.com/ZHOUYOUKUN/Table



相关文章: