mpandroidchart 绘制K线图 难点解决-高亮 连线 与 表格对齐

mpandroidchart 绘制K线图 最少要处理高亮和对齐问题

先来个图片看下效果
mpandroidchart 绘制K线图 难点解决-高亮 连线 与 表格对齐_第1张图片

1、对齐
直接说重点,设置表格对齐的属性,靠右显示y轴就不说了
YAxis myYAxis = combinedChart.getAxisRight();
myYAxis.setMaxWidth(33);
myYAxis.setMinWidth(33);
不设置这个 就算对齐了,滑动的时候有时候会对不齐,,,,泪崩,,,
2、高亮的线,绘制超出表格数据内容外面,也就是打包x轴坐标值,也就能和下面的表格看起来连在一起
(1) 由于mpandroidchart的源码中,ondraw方法,里面 绘制高亮线的时候,会裁剪内容,不管你把高亮线设置多高,都会被截取掉,所以先找到BarLineChartBase 这个类的ondraw方法
吧这句代码

    // if highlighting is enabled
    if (valuesToHighlight())
        mRenderer.drawHighlighted(canvas, mIndicesToHighlight);  移动到 drawMarkers这里,根据源码不同吧,自己看移动到哪里,反正不要再  canvas.clipRect(mViewPortHandler.getContentRect()); 这个后面,不然就被裁剪掉了

(2) 修改BarChartRenderer 类 drawHighlighted 方法 c.drawLine(mBarRect.centerX(), mViewPortHandler.getContentRect().bottom+200, mBarRect.centerX(),0, mHighlightPaint); +200那里改高度
这个改非k线图表
(3)k线图表改LineScatterCandleRadarRenderer 类 drawHighlightLines 方法
//重写高亮,+200
mHighlightLinePath.lineTo(pts[0], mViewPortHandler.contentBottom()+200); 这个改高度
希望能帮助大家。。。

你可能感兴趣的:(Android)